Java--Math类和Random类

发布于:2024-06-11 ⋅ 阅读:(54) ⋅ 点赞:(0)

1.Math类简介

1.Math类中提供了大量用于数学运算的相关方法。
2.Math类是使用final修饰的终结类,不能产生子类
3.Math类中的方法都是static修饰的静态方法,可以通过类名.方法名直接调用

2.Math常用方法

1.abs(int):求绝对值(int,long,float,double做为参数)
2.ceil(double):求大于等于给定值的最小整数值,以double类型返回
3.floor(double):求小于等于给定值的最大整数值,以double类型返回
4.max(int,int):求两个数字中最大的值(int long float double做为参数)
5.min(int,int):求两个数字中最小的值(int long float double做为参数)
6.random():获取一个0到1之间的随机小数
7.round(float|double):返回int或long,采用四舍五入法,获取最接近的整数值
8.sqrt(double):获取平方根,如果传值为负数,返回NaN
9.pow(double,double):求一个数的N次方
10.sin(double)/cos(double)/tan(double):获取给定弧度值的三角函数值

 看看案例

public class Test {
    public static void main(String[] args) {
        System.out.println(Math.abs(5));
        double ceil = Math.ceil(-3.5);
        System.out.println(ceil);
        double floor = Math.floor(-3.5);
        System.out.println("floor = " + floor);
       int max = Math.max(12, 5);
        System.out.println("max = " + max);
        int min = Math.min(12, 5);
        System.out.println("min = " + min);
        double d=3.5415;
        long round = Math.round(d);
        System.out.println(round);
       int x=-2;
        double sqrt = Math.sqrt(x);
        System.out.println(sqrt);
        //Not a Number
       double pow = Math.pow(5, 3);
        System.out.println("pow = " + pow);

    }
}


运行结果

 

3.Random类

3.1Random简介

ava.util下有一个Random类,根据随机算法的起源数字(种子)进行一些迭代变化,来产生随机数。
虽然Random类产生的数字是随机的,但在相同种子数下的相同次数产生的随机数是相同的(伪随机数)

3.2Random构造方法

Random():以系统自身的时间为种子类来构造Random对象
Random(long):可以自己来选定具体的种子数来构造Random对象

3.3Random常用方法

nextInt():获取int类型的随机数
nextInt(int):获取0(包含)到给定值(不包含)之间的随机数
nextlong():获取long类型的随机数
nextfloat():获取一个随机单精度浮点数0到1之间
nextDouble():获取一个随机双精度浮点数 0到1之间
nextBoolean(): 返回一个随机boolean类型的值,true或false,概率相同

案例

public class Test {
    public static void main(String[] args) {
        Random random=new Random();
        int i=random.nextInt();
        System.out.println(i);
        //伪随机数验证
       Random random1=new Random(100);
        Random random2=new Random(100);
        int num=random.nextInt();
        int num1=random1.nextInt();
        System.out.println("num = " + num);
        System.out.println("num1 = " + num1);
        Random random3=new Random();
        int i1=random.nextInt(2);//获取一个0(包含)到2(不包含)之间的数字
        System.out.println(i);
        long l = random.nextLong();
        System.out.println("l = " + l);
        float v = random.nextFloat();
        double v1 = random.nextDouble();
        float v2 = random.nextFloat();
        System.out.println("v = " + v);
        double v3 = random.nextGaussian();
        boolean b = random.nextBoolean();
        System.out.println(b);

    }
}

 

运行结果

 


网站公告

今日签到

点亮在社区的每一天
去签到