DecimalFormat 保留精度或者是 小数 比较好用
生活随笔
收集整理的這篇文章主要介紹了
DecimalFormat 保留精度或者是 小数 比较好用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
DecimalFormat 還是比較穩定和好用的 。少bug .
BigDecimal 類也有 四舍五入 ,和 保留 多少位小數 等等方法。 比如 ROUND_HALF_UP 可是 在使用的時候,還是比較難用,在某些情況下面 ,還是 會有多位小數的。 比如下面的我自己測試的 demo 不知道為什么 BigDecimal 不能保留 2位小數, DecimalFormat 可以保留2位小數,而且很好用啊,變字符串什么的,也可以通過字符串變其他 類型。好用多了。
double total =0.00;total=total+ 3*0.01*30;BigDecimal bigDecimal=new BigDecimal(total);DecimalFormat df = new DecimalFormat("#########0.##");df.setRoundingMode(RoundingMode.HALF_UP); //保留2位小數 ,不足不補0 System.out.println(">>>>"+df.format(total));bigDecimal.setScale(2,BigDecimal.ROUND_HALF_UP);System.out.println(bigDecimal.toString());BigDecimal totalScore=new BigDecimal("0.00");totalScore=totalScore.add(bigDecimal);double change = bigDecimal.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();BigDecimal changeDecimal=new BigDecimal(change);System.out.println(changeDecimal.toString()); DecimalFormat df1 = new DecimalFormat("###0.00") ; //保留兩位小數,如果不足兩位小數則自動補零 System.out.println(df1.format(124.367)); System.out.println(df1.format(124.3)); DecimalFormat df2 = new DecimalFormat("###0.##") ; //保留兩位小數,不足兩位則不補零 System.out.println(df2.format(124.6)); System.out.println(df2.format(124)); 以下是保留兩位小數,同時四舍五入,然后小數點前從右到作,3位一個逗號分隔符 float scale = (float) 3434567; DecimalFormat fnum = new DecimalFormat("###,##0.00"); String dd=fnum.format(scale); System.out.println(dd);//3,434,567.00參考地址: http://blog.csdn.net/yansong_8686/article/details/27407513
轉載于:https://my.oschina.net/u/2419285/blog/855530
總結
以上是生活随笔為你收集整理的DecimalFormat 保留精度或者是 小数 比较好用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: struts2S2-045漏洞相关信息
- 下一篇: Jenkins集成java非maven/