我正在使用java並引用「double」數據類型。爲了保持簡短,我從標準輸入中讀取了一些值,我在代碼中讀取了雙精度值(我寧願使用類似BigInteger的東西,但現在不可能)。浮點舍入檢測
我希望得到來自用戶的雙重價值,但有時他們可能會喜歡的東西輸入: 999999999999999999999999999.9999999999 我認爲這是超越雙準確地表述,並得到的四捨五入到1.0E27(可能)。
我想獲得一些關於如何檢測某個特定值是否無法在double中精確表示並需要四捨五入的指示(以便我可以拒絕該值或其他此類操作)。
非常感謝您
確實你是對的。 更具體地說,我總是會得到正數,最多10位數的精度,所以我的要求是限制整個部分的數字,這樣它就不會導致舍入 – cupu 2008-11-06 13:25:40
恐怕我還是不願意「很明白。你的意思是你實際上只能得到整數嗎?如果是這樣,請使用很長時間。如果沒有,我又輸了... – 2008-11-06 13:34:04
我已經有一個問題,提出請求 謝謝(特別是)和其他人誰回答,雙是真的很糟糕在我的情況下使用......哪我一直在抱怨一段時間:)。 – cupu 2008-11-06 13:48:05