【Java】保留N位小数的四种方法
1 @Test 2 public void test(){ 3 double d = 757.234466773; 4 // 方法一: 调用DecimalFormat类 5 DecimalFormat df = new DecimalFormat(".00"); 6 System.out.println(df.format(d)); // 757.23 7 // 方法二:直接使用String类的format函数实现 8 String s = String.format("%.2f",d); 9 System.out.println(s); // 757.23 10 // 方法三:通过BigDecimal类实现 11 BigDecimal bd = new BigDecimal(s); 12 double d2 = bd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); 13 System.out.println(d2); // 757.23 14 // 方法四:通过NumberFormat类实现 15 NumberFormat nf = NumberFormat.getInstance(); 16 nf.setMaximumFractionDigits(2); 17 System.out.println(nf.format(d)); // 757.23 18 }
有志者,事竟成,破釜沉舟,百二秦关终属楚; 苦心人,天不负,卧薪尝胆,三千越甲可吞吴。