让Double类型完整显示,不用科学计数法显示E(Java)
生活随笔
收集整理的這篇文章主要介紹了
让Double类型完整显示,不用科学计数法显示E(Java)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載自 --?https://www.cnblogs.com/gitkoot/p/5433273.html
?
今天在處理B2B項目的bug的時候,發現我post給后臺的物品的含稅單價是竟然含有12345666661E10這樣的,是以String類型傳過去的
這樣后臺如果不做處理,那樣肯定存在到數據庫的字段有問題。
? 我采取這樣的處理方式代碼如下:--這個是直接從代碼取出來的
private BigDecimal totalAmount = new BigDecimal(0); new BigDecimal(new Double(totalAmount.doubleValue()).toString())我在網上查了些方案大都是這樣的處理方式如下:
? DecimalFormat df = new DecimalFormat("0"); Double d = new Double("1.2345666661E10"); System.out.println(df.format(d)); ?這個方式有個問題,是不會保留小數點后小數位.
我的處理方式是可以保留小數位的,具體的詳細方法如下:
BigDecimal bigDecimal = new BigDecimal("1.2345666666E10"); String result = bigDecimal.toString();另外我將網上的方案進行修改代碼如下:
DecimalFormat df = new DecimalFormat(); df.setMaximumFractionDigits(2);//這里是小數位 Double d = new Double("1.2345666661E10"); System.out.println(df.format(d));這個方案還沒有進行完整的測試,大家如果有不同的想法一起交流!
轉載于:https://www.cnblogs.com/kyrie211/p/11204872.html
總結
以上是生活随笔為你收集整理的让Double类型完整显示,不用科学计数法显示E(Java)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hollis要转行了?
- 下一篇: 两天,我把分布式事务搞完了