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

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

將雙精度值與雙精度常數進行比較

將雙精度值與雙精度常數進行比較

幕布斯6054654 2024-01-28 17:05:16
我知道有一些關于與 delta 進行雙重比較的主題,這是比較雙精度值的正確方法。然而我的問題是關于將雙精度值與常量進行比較。JVM 是否有可能以錯誤的精度存儲值 0(例如從 xml 讀取)?有沒有可能:double constant = 0.0;double reference = readValueFromDocument();//which is 0boolean result = constant == reference;result不會永遠是嗎true?更一般地說,這個問題聽起來像:JVM 在分配期間是否存儲了精度錯誤的雙常量,或者它僅對計算有效?
查看完整描述

1 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

0.0、0.00 或 0 可以精確地表示為 8 字節雙精度數。0.2 沒有。你的情況將永遠是正確的。僅當變量的計算方式為 0.1-0.2+0.1 時,您才可以預期會有小偏差。這對于所有浮點計算機語言都有效。另外 double 不具有精度。

對于財務軟件來說,具有精度、刻度的BigDecimal定點往往是更好的選擇。給出小數點后 2 位小數的精度。new BigDecimal("12.00")


查看完整回答
反對 回復 2024-01-28
  • 1 回答
  • 0 關注
  • 162 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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