亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于java問題詳細見下?

關于java問題詳細見下?

肥皂起泡泡 2018-08-03 13:09:07
怎么我的總金額出現了這么多為小數 ?求大佬給我解釋下 
查看完整描述

2 回答

?
aluckdog

TA貢獻1847條經驗 獲得超7個贊

因為你定義的 PriceZong 用的是 Double 類型, JVM對double類型計算的時候,后面就是會有很多小數,這是由JVM對 double 類型值的計算方法導致的。
建議你將金額 priceZong定義為 BigDecimal 類型,在以后的開發過程中,遇到銀行的金錢問題、經濟相關,都可以用 BigDecimal 來對“金錢”進行定義。

查看完整回答
反對 回復 2018-08-13
?
LEATH

TA貢獻1936條經驗 獲得超7個贊

因為一些精度的問題,double的話你可以使用
**
* 提供精確到百分位的限制,你可以自己修改顯示幾個小數
*/
public static Double limit(Double dou) {
DecimalFormat df = new DecimalFormat("#.00");
return Double.valueOf(df.format(dou));
}
比如你加發可以用調用這個方法
v1 被加數
v2 加數
public static double add(double v1,double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.add(b2).doubleValue();
}

查看完整回答
反對 回復 2018-08-13
  • 2 回答
  • 0 關注
  • 928 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號