Java实用类(五) -Math类和指定范围的随机数
1、Math类
java.lang.Math类提供了常用的数学运算方法和两个静态常量E(自然对数的底数) 和PI(圆周率)
// 绝对值
System.out.println(Math.abs(-3.5)); // 3.5
// 最大值
System.out.println(Math.max(2.5, 90.5));// 90.5
// 随机数
int random = (int) (Math.random() * 10); // 生成一个0-10之间的随机数
// 四舍五入
System.out.println(Math.round(3.45)); // 3
System.out.println(Math.round(3.55)); // 4
// 向上取整(取大于当前数的最小整数)
System.out.println(Math.ceil(3.25)); // 4.0
// 向下取整(取小于当前数的最大整数)
System.out.println(Math.floor(3.25)); // 3.0
注:Math类方法很多,需要使用直接看API文档即可,不需要全部掌握
2、Random类 -- java.util.Random类
//简单介绍使用示例,不需要全部掌握,用到时候查下文档即可
// 创建一个Random对象
Random rand=new Random();
for(int i=0; i<20; i++){
// 随机生成20个随机整数,并显示
int num=rand.nextInt(10);// 返回下一个伪随机数,整型的
System.out.println("第"+(i+1)+"个随机数是:"+num);
}
运行结果
第1个随机数是:4
第2个随机数是:8
第3个随机数是:5
第4个随机数是:3
第5个随机数是:1
第6个随机数是:1
第7个随机数是:1
第8个随机数是:8
第9个随机数是:8
第10个随机数是:7
第11个随机数是:5
第12个随机数是:7
第13个随机数是:9
第14个随机数是:4
第15个随机数是:0
第16个随机数是:5
第17个随机数是:0
第18个随机数是:3
第19个随机数是:8
第20个随机数是:9
3、生成指定范围的随机数
(int)(a + Math.random() * b )——>[a,a + b)
//(int)(a + Math.random() * b )——[a,a + b)
//4~9-->(int)(4 + Math.random() * (10-4)) )——[4,10)
for (int i = 0; i < 20; i++) {
int RandomNum = 0;
//生成0~9的随机整数
RandomNum = (int)( 4+Math.random() * (10-4));
System.out.println("生成的随机数为:"+ RandomNum);
}
运行结果
生成的随机数为:7
生成的随机数为:8
生成的随机数为:6
生成的随机数为:9
生成的随机数为:4
生成的随机数为:5
生成的随机数为:6
生成的随机数为:4
生成的随机数为:6
生成的随机数为:5
生成的随机数为:5
生成的随机数为:6
生成的随机数为:6
生成的随机数为:9
生成的随机数为:5
生成的随机数为:4
生成的随机数为:4
生成的随机数为:7
生成的随机数为:6
生成的随机数为:5