Kotlin中浮点型和双精度型的最小值和最大值
很容易找出Kotlin中浮点型和双精度型的最小值和最大值,kotlin,Kotlin,很容易找出Integer和Longinteger的确切最小值和最大值是多少,单位为Kotlin: 有符号32位整数: Int.MIN_VALUE // -2147483648 Int.MAX_VALUE // 2147483647 有符号64位整数: Long.MIN_VALUE // -9223372036854775808 Long.MAX_VALUE // 9223372036854775807 但是如果我尝试打印Float或Double
Int
eger和Long
integer的确切最小值和最大值是多少,单位为Kotlin:
有符号32位整数:
Int.MIN_VALUE // -2147483648
Int.MAX_VALUE // 2147483647
有符号64位整数:
Long.MIN_VALUE // -9223372036854775808
Long.MAX_VALUE // 9223372036854775807
但是如果我尝试打印Float
或Double
类型的min
和max
值的范围,我会得到不平衡的数字
有符号32位浮点数:
Float.MIN_VALUE // 1.4E-45
Float.MAX_VALUE // 3.4028235E38
Double.MIN_VALUE // 4.9E-324
Double.MAX_VALUE // 1.7976931348623157E308
有符号64位浮点数:
Float.MIN_VALUE // 1.4E-45
Float.MAX_VALUE // 3.4028235E38
Double.MIN_VALUE // 4.9E-324
Double.MAX_VALUE // 1.7976931348623157E308
为什么
Float
和Double
类型中的正负值如此不同?对于整数和浮点数,minu值的概念定义是不同的
Int.MIN_值
是最大的负值
Float.MIN_值
是最小的正值
换句话说,1.4E-45
是0.00[40零]0014
,不是一个很大的负数。最大可能的负值由-1*Float.MAX\u value
表示,这只是为了补充讨论,因为我犯了一个错误,以为Float.MIN\u value
和Double.MIN\u value
与Int.MIN\u value
相关,因为它们都应该表示该数据类型的最负值
对于Float
或Double
而言,除了MIN\u VALUE
或MAX\u VALUE
之外,NEGATIVE\u INFINITY
和POSITIVE\u INFINITY
还有其他属性,从技术上讲,它们可能是最大的负值和正值。我试图找到一个数字来表示一个尚未使用的var的值<代码>最小值
对我无效,因为我处理的是正数和负数。最大正浮点值和最大负浮点值是相同的(符号位除外)Float.MIN_值
和Float.MAX_值
非常不同,因为它们是最接近0的数字,也是最远离0的数字。代码格式?