1.生成随机数的方法有Math.random和new Random.nextXXX();

double a=Math.random()*10;double b=new Random().nextDouble()*10;

System.out.println(a+"------"+b);//输出结果:4.554615644299059------9.0498563174394

2.保留两位小数的方法有DecimalFormat或者String.format()两种方法:

1.先实例化DecimalFormat在构造器中传入需要格式化的格式

0(代表一个数字,如果不存在显示0)

符号#(代表一个或多个数字,如果不存在则显示为空)

double a=Math.random()*10;

DecimalFormat df= new DecimalFormat( "0.00");

String str=df.format( a );

System.out.println(str);//输出结果:4.55

该方法会保留两位小数并且如果随机数中有0会用0来填充

注意:返回的是String类型的数据,如果用Double.parseDouble()方法再将str转为double类型,如果小数最后一位为0会自动舍弃。。。比如:str=6.30,Double.parseDouble(str)的值会变为6.3

楼主懒得打了。。。

2.使用String.format(String.format("%.2f", a) ),a是double类型的数据,也可以保留两位小数。

原文:https://wwwblogs/javazyh/p/11177983.html

更多推荐

java 生成2位随机数_java生成随机数保留数点后两位