Java保留两位小数的实现方法
Java保留两位小数的实现方法
采用四舍五入的方式:该方式来自网络
importjava.math.BigDecimal; importjava.text.DecimalFormat; importjava.text.NumberFormat; publicclassformat{ doublef=111231.5585; publicvoidm1(){ BigDecimalbg=newBigDecimal(f); doublef1=bg.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println(f1); } /** *DecimalFormat转换最简便 */ publicvoidm2(){ DecimalFormatdf=newDecimalFormat("#.00"); System.out.println(df.format(f)); } /** *String.format打印最简便 */ publicvoidm3(){ System.out.println(String.format("%.2f",f)); } publicvoidm4(){ NumberFormatnf=NumberFormat.getNumberInstance(); nf.setMaximumFractionDigits(2); System.out.println(nf.format(f)); } publicstaticvoidmain(String[]args){ formatf=newformat(); f.m1(); f.m2(); f.m3(); f.m4(); } }
结果:
111231.56 111231.56 111231.56 111,231.56
采用非四舍五入的方式:
publicstaticvoidmain(String[]args){ doublefinalMoney=27.989; System.out.println(finalMoney); DecimalFormatformater=newDecimalFormat(); formater.setMaximumFractionDigits(2); formater.setGroupingSize(0); formater.setRoundingMode(RoundingMode.FLOOR); System.out.println(formater.format(finalMoney)); }
结果
27.989 27.98
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!