我对此有些好奇。 Math.random()给出的值在[0.0,1.0)范围内。那么,它所能带来的最大值(value)是什么?换句话说,小于1.0的最接近于1.0的double值是多少?

最佳答案

Java使用64位IEEE-754表示形式,因此,理论上小于1的最接近数是十六进制表示形式的3FEFFFFFFFFFFFFF,它的符号为0,指数为-1,52位有效数为1.9999999999999997。这大致等于0.9999999999999998

引用:IEEE-754 Calculator

关于Java:Math.random()最大值(小于1的两倍),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15736885/

10-11 04:02