Java中浮点的最大值?

Java中浮点的最大值?,java,floating-point,minimum,Java,Floating Point,Minimum,以下内容表示双精度的最小值为-Double.MAX\u value。对于浮点(即,-Float.MAX\u VALUE)也是如此吗?是的,-Float.MAX\u VALUE是具有最大幅度的负数浮点s的表示方式与双精度s相同,只需一半的存储空间(以及随之而来的精度损失)。由于IEEE 754中的符号由一个位表示,翻转该位不会改变剩余位可达到的总体幅度。是的,浮点也是如此 有关更多信息,请查看此处的手册是-它的位模式与Float.MAX_VALUE相同,只是符号位翻转了。。。这是获得价值的另一种方

以下内容表示双精度的最小值为
-Double.MAX\u value
。对于浮点(即,
-Float.MAX\u VALUE
)也是如此吗?

是的,
-Float.MAX\u VALUE
是具有最大幅度的负数<代码>浮点s的表示方式与双精度s相同,只需一半的存储空间(以及随之而来的精度损失)。由于IEEE 754中的符号由一个位表示,翻转该位不会改变剩余位可达到的总体幅度。

是的,浮点也是如此


有关更多信息,请查看此处的手册

是-它的位模式与
Float.MAX_VALUE
相同,只是符号位翻转了。。。这是获得价值的另一种方式:

public class Test {
    public static void main(String[] args) {
        // Float.MAX_VALUE is intBitsToFloat(0x7f7fffff)
        // so we set the most significant bit - the sign bit
        float f = Float.intBitsToFloat((int) 0xff7fffff);
        System.out.println(f == -Float.MAX_VALUE); // true
    }
}

是的,原因与您链接的问题的答案中所述完全相同,浮点和双精度浮点使用IEEE754表示法,由于它们的存储方式,IEEE754表示法是“对称的”。

编辑:我的原始答案似乎严重错误。谢谢@aioobe指出这一点

相反,使用java代码的魔力来回答标题问题:

System.out.printf( "Float.MAX_VALUE: %,f\n", Float.MAX_VALUE );
Float.MAX_值:3402823463852886000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

System.out.printf("in scientific notation: %.18g\n", Float.MAX_VALUE );
科学记数法:3.40282346638528860e+38

System.out.printf(
            "in hexadecimal floating-point number with a significand and "
            + "an exponent: %a", Float.MAX_VALUE );

在十六进制浮点数中,有一个有效位和一个指数:0x1.fffff ep127

你的意思是-Float.MAX_值吗?为什么不是真的?@CoolBeans阅读了他的链接问题;他说的是“数量级最大的负数”。@dlev是的,我指的是“数量级最大的负数”