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

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类型的数据,也可以保留两位小数。

 

posted @ 2019-07-12 19:23  小矮子的小胖子  阅读(18800)  评论(0)    收藏  举报