Java Float / Double Type和VB.NET的Float / Double Type之间有区别吗?
编辑:他们都使用相同的规格吗? (IEEE 754)
答案 0 :(得分:2)
保持签名的IEEE 64位(8字节)双精度浮点数 值范围为-1.79769313486231570E + 308到的数字 -4.94065645841246544E-324为负值,从4.94065645841246544E-324到1.79769313486231570E + 308为正值。双精度数字存储真实的近似值 号。
双数据类型是双精度64位IEEE 754浮点数 点。它的价值范围超出了本次讨论的范围,但是 在浮点类型,格式和值部分中指定 Java语言规范。对于十进制值,此数据类型 通常是默认选择。
答案 1 :(得分:2)
在Java中,float是32位IEEE 754浮点,double是64位IEEE 754浮点。这是一个标准,与机器无关。
我不知道任何适用于VB.NET的类似标准。这是一个很好的参考点: http://msdn.microsoft.com/en-us/library/47zceaw7(v=vs.80).aspx
所以,目前它们是相同的尺寸,但我认为你不能永远保证。它们可能会或可能不会在尾数和指数之间具有相同的位分配。
(请记住,例如,VBA中的整数仍然是16位!)