Math 类不需要导入包就能直接使用
final 修饰类,Math类不能被继承
构造其私有化,不能创建 Math 类的对象
Math 内部所有的属性和方法都被 static 修饰(可以通过类名直接调用,无需创建对象)
常用方法
public class Demo01 {
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));//|-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));
}
}
可以通过静态导入简化输入
//静态导入包
import static java.lang.Math.*;
public class Demo01 {
public static void main(String[] args) {
//常用属性
System.out.println(PI);
//常用方法
System.out.println("随机数:"+random());//[0.0,1.0)
System.out.println("绝对值:"+abs(-80));//|-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));
}
}
import java.util.Random;
public class Demo01 {
public static void main(String[] args) {
//Math类的随机数:表面调用的是Math类的random(),实际上是调用Random类的nextDouble();
System.out.println("随机数:"+Math.random());//[0.0,1.0)
//Random类
//利用带参数的构造器创建对象
Random r1 = new Random(10000L);
System.out.println(r1.nextInt());
//利用空构造器创建对象
Random r2 = new Random();//表面是调用无参构造器,实际上还是调用了带参构造器
System.out.println(r2.nextInt(100));//在0(包括)和指定值(不包括)之间均匀分布的 int 值
System.out.println(r2.nextDouble());//[0.0,1.0)
}
}
原文:https://www.cnblogs.com/dt746294093/p/14670725.html