1.Math.random() 生成0~0.9999的随机数 [0,1)
代码:
@Test
public void random(){
double random = Math.random();// 生成0~0.99999的随机数
Integer random1 = (int)(random*9000+1000);// 生成0~10000的四位随机数
System.out.println(random);
System.out.println(random1);
}
结果
0.12933433949658346
1294
2.Math.round(),Math.ceil(),Math.floor()的区别
2.1、Math.round() “四舍五入”, 该函数返回的是一个四舍五入后的的整数
代码
@Test
public void round(){
long round = Math.round(99.999);
long round1 = Math.round(99.40);
long round2 = Math.round(-99.999);
long round3 = Math.round(-99.30);
// 四舍五入,根据小数点第一位进行判断,如果>=5整数部分加1,如果<5去除小数
System.out.println(round);// 结果 100
System.out.println(round1);// 结果 99
System.out.println(round2);// 结果 -100
System.out.println(round3);// 结果 -99
}
2.2、Math.ceil() “向上取整”, 即小数部分直接舍去,并向正数部分进1
代码
@Test
public void ceil(){
double ceil = Math.ceil(56.23);
double ceil1 = Math.ceil(23.68);
double ceil2 = Math.ceil(-69.26);
double ceil3 = Math.ceil(-53.63);
// 向上取整,如果是正数直接加一,如果是负数,直接去除小数
System.out.println(ceil);// 结果 57.0
System.out.println(ceil1);// 结果 24.0
System.out.println(ceil2);// 结果 -69.0
System.out.println(ceil3);// 结果 -53.0
}
2.3、Math.floor() “向下取整” ,即小数部分直接舍去
代码
@Test
public void floor(){
double floor = Math.floor(23.55);
double floor1 = Math.floor(36.05);
double floor2 = Math.floor(-68.26);
double floor3 = Math.floor(-99.99);
// 向下取整,如果是正数小数部分直接去掉,如果是负数看小数点第一位,如果>=5整数部分减1,如果<5去除小数
System.out.println(floor);// 结果 23.0
System.out.println(floor1);// 结果 36.0
System.out.println(floor2);// 结果 -68.0
System.out.println(floor3);// 结果 -100.0
double floor4 = Math.floor(8.54 * 100);
System.out.println(floor4);
//【注】Math.floor();这种函数慎用,他的精度不准确,举个列子
//对小数9.54 保留两位小数(虽然它已经保留了 2 位小数):
//Math.floor(8.54*100) Math.floor(9.54*100) // 输出结果为 853,953 而不是 854,954。
}
3、Math函数一些其他的用法
@Test
public void math(){
double min = Math.min(23.55,25.55); // 输出最小值(两值做比较)
double max = Math.max(36.05,37.99); // 输出最大值(两值做比较)
double floorDiv = Math.floorDiv(200,20); // 两数相除(200.0/20.0=10.0)
System.out.println(min);// 结果 23.55
System.out.println(max);// 结果 37.99
System.out.println(floorDiv);// 结果 10.0
}