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类内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!