int
和float
有4个字节的值。
如果存在int不包含0.5
之类的浮动值,那么int
包含的值是float
还是{{1}}。
答案 0 :(得分:2)
我假设您正在寻找可以使用int
而不是float
呈现的数字。
其中一个是Integer.MAX_VALUE
。
int i = Integer.MAX_VALUE;
float f = i; // or 2147483647f
System.out.println(i);
System.out.println(String.format("%f", f));
显示
2147483647
2147483648.000000
这是因为虽然两者都有32-bits
,但float
除以用于符号(1 bit
)的位,指数(8 bits
)和有效数字或尾数(23 bits
)。