java解決數據精度問題

System.out.println(12.0f-11.9f); 輸出結果爲:0.10000038java 爲何會出現這種狀況呢?編碼 那是由於在將十進制浮點數轉換爲二進制浮點數時,小數的二進制有時也是不可能精確的,就如同十進制不能準確表示1/3,二進制也沒法準確表示1/10,而double類型存儲尾數部分最多隻能存儲52位,因而,計算機在存儲該浮點型數據時,便出現了精度丟失(1)。例如,11.9
相關文章
相關標籤/搜索