Java:double类型保留两位小数
Java开发,double类型的数据保留两位小数。
工具/原料
myEclipse
代码示例
1、下面是五种处理方法,使double类型的数据保留2位小数。
2、/*具体代码*/importjava.math.BigDecimal;importjava.math.RoundingMode;importjava.text.DecimalFormat;publicclassTest{double[]num={3.4567,3,0.4567,2343.333,133,3.1415};publicvoidfunc(){inti=1;for(doubled:num){System.out.println("测试"+(i++)+"="+d);Stringdstr=String.valueOf(d);//第一种:java.text.DecimalFormatdf=newjava.text.DecimalFormat("#.##");System.out.println("第一种="+df.format(d));//第二种:通过下面的结果可以看出,一二两种都可以,第一种如果小数部分是0的话就只显示整数,第二种始终显示两位小数BigDecimalbd=newBigDecimal(dstr);bd=bd.setScale(2,BigDecimal.ROUND_HALF_UP);System.out.println("第二种="+bd);//第三种:longl=Math.round(d*100);//四舍五入doubleret=l/100.0;//注意:使用100.0而不是100System.out.println("第三种="+ret);//第四种:d=((int)(d*100))/100;System.out.println("第四种="+d);//第五种DecimalFormatdf2=newDecimalFormat("#.00");//df2.setRoundingMode(RoundingMode.HALF_UP);System.out.println("第五种="+df2.format(d));System.out.println("-------------------------风骚的java分割线---------------------------");}}publicstaticvoidmain(String[]args){Testt=newTest();t.func();}}
3、运行结果:测试1 = 3.4567第一种=3.46第二种=3.46第三种=3.46第四种=3.0第五种=3.00-------------------------风骚的java分割线---------------------------测试2 = 3.0第一种=3第二种=3.00第三种=3.0第四种=3.0第五种=3.00-------------------------风骚的java分割线---------------------------测试3 = 0.4567第一种=0.46第二种=0.46第三种=0.46第四种=0.0第五种=.00-------------------------风骚的java分割线---------------------------测试4 = 2343.333第一种=2343.33第二种=2343.33第三种=2343.33第四种=2343.0第五种=2343.00-------------------------风骚的java分割线---------------------------测试5 = 133.0第一种=133第二种=133.00第三种=133.0第四种=133.0第五种=133.00-------------------------风骚的java分割线---------------------------测试6 = 3.1415第一种=3.14第二种=3.14第三种=3.14第四种=3.0第五种=3.00-------------------------风骚的java分割线---------------------------
分析结果:
1、通过执行结果可以看出,一二两种都可以,第一种如果小数部分是0的话就只显示整数,第二种始终显示两位小数。可以根据自己的需要进行选择。