Luk*_* Vo 2 java memory math infinite
如果它需要所有32位存储从-2 ^ 31到2 ^ 31,它怎么能存储+和 - 无限?它是否使用更多内存?存储这些值是否安全且安全?
更新:由于答案,我知道只有浮点数据类型可以存储Inf值,而Integers不能.
小智 8
Java以及大多数其他编程语言遵循IEEE 754规范的浮点数.可能值的范围略微减小以允许无穷大以及NaN(非数字).这些都是安全的存储; 例如,它们甚至可以作为常量使用Double.POSITIVE_INFINITY.
NaN
Double.POSITIVE_INFINITY
如果从-2 ^ 31到2 ^ 31存储所有32字节
我认为你的意思是32 位,用于存储此范围内的所有可能的整数值.Java的Integer类型按照您的描述工作,无法存储无穷大或其他特殊值.
T.J*_*der 6
如果它需要所有32 字节位存储从-2 ^ 31到2 ^ 31 ...
你在谈论Integers.
Integer
......怎么能存储+和 - 无限?
你在谈论Float和Double,它们是不同的数据类型.Float是32位IEEE 754号码,Double是64位IEEE 754号码.IEEE 754浮点数具有为正无穷大预留的特殊值.
Float
Double
Java Integer类中没有特殊的"无穷大"值,您可以存储全部值.
归档时间:
14 年,1 月 前
查看次数:
1340 次
最近记录:
9 年,11 月 前