我正在使用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