文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Java基础之Math和Random类知识总结

2024-04-02 19:55

关注

java的Math类

在这里插入图片描述

java中的java.lang.Math类可以直接使用,不需要导包,在JDK的API 中看到Math类被final修饰着,那么说明了这个Math类不能被继承,构造器私有化,不能创建Math类的对象,也就是说


public static void main(String []args){
	Math m = new Math();
}

这种写法是错误的

在这里插入图片描述

Math内部的所有的属性和方法都被static修饰了,这说明在调用的时候直接使用类名.的方式直接调用,无需创建对象。
接下来介绍Math类中的几个常用的方法:

方法 说明 返回值类型
random() 返回带正号的双精度值,大于或等于0.0,小于1.0。 static double
abs() 取数的绝对值,可以是int long double float int / long / double / float
ceil() 向上取值 返回一个double类型
floor() 向下取值 返回一个double类型
round() 四舍五入 返回一个long或者是int类型的值
max()和min() 返回最大值和最小值 返回的值可以是double、float、int、long类型的值

package Test;

public class Test06 {
    public static void main(String[] args) {
        //常用属性:
        System.out.println(Math.PI);
        //常用的方法:
        System.out.println("随机数:" + Math.random());//[0.0,1.0)
        System.out.println("绝对值" + Math.abs(-80));
        System.out.println("向上取值" + Math.ceil(9.1));
        System.out.println("向下取值" + Math.floor(9.9));
        System.out.println("四舍五入" + Math.round(3.5));
        System.out.println("取大的那个值" + Math.max(3, 6));
        System.out.println("取小的那个值" + Math.min(3, 6));
    }
}

同样Math类可以使用静态导入的方式,直接导入Math类的所有方法和属性


package Test;
//静态导入

import static java.lang.Math.*;

public class Test07 {
    public static void main(String[] args) {
        //常用属性:
        System.out.println(PI);
        //常用的方法:
        System.out.println("随机数:" + random());//[0.0,1.0)
        System.out.println("绝对值" + abs(-80));
        System.out.println("向上取值" + ceil(9.1));
        System.out.println("向下取值" + floor(9.9));
        System.out.println("四舍五入" + round(3.5));
        System.out.println("取大的那个值" + max(3, 6));
        System.out.println("取小的那个值" + min(3, 6));
    }
    //如果和Math中的方法重复了,程序会优先选择本类的方法,这就是就近原则
    public static int random(){
        return 100;
    }
}

java的Random类

在这里插入图片描述

Random类在java.util.Random中

Random类的常用方法:

方法 说明
nextInt() 返回此随机数生成器序列中的下一个伪随机、均匀分布的int值。
nextDouble() 返回此随机数生成器序列中的下一个伪随机、均匀分布的介于0.0和1.0之间的双精度值。

package Test;

import java.util.Random;

public class Test08 {
    public static void main(String[] args) {
        System.out.println("随机数" + Math.random());
        //学习Random类
        //利用带参数的构造器创建对象
        Random r1 = new Random(System.currentTimeMillis());
        int i = r1.nextInt();
        System.out.println(i);
        //利用空参构造器创建对象
        Random r2 = new Random();//表面是在调用无参构造器,实际上底层还是调用了带参构造器
        System.out.println(r2.nextInt(10));
        System.out.println(r2.nextDouble());
    }
}

到此这篇关于Java基础之Math和Random类知识总结的文章就介绍到这了,更多相关java的Math和Random类内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯