scala – 朋友之间的Int.MaxValue是什么?
发布时间:2020-12-16 18:44:31 所属栏目:安全 来源:网络整理
导读:Scala中int,float和long的最大值为: Int.MaxValue = 2147483647 Float.MaxValue = 3.4028235E38 Long.MaxValue = 9223372036854775807L 来自Scala编译器的作者,Keynote,PNW Scala 2013,幻灯片16朋友之间的Int.MaxValue是什么?: val x1: Float = Long.MaxV
Scala中int,float和long的最大值为:
来自Scala编译器的作者,Keynote,PNW Scala 2013,幻灯片16朋友之间的Int.MaxValue是什么?: val x1: Float = Long.MaxValue val x2: Float = Long.MaxValue - Int.MaxValue println (x1 == x2) // NO WONDER NOTHING WORKS 为什么这个表达式返回true? 解决方法
Float是一个4字节的浮点值.同时,Long是8字节值,Int也是4字节值.但是,数字以4字节浮点值存储的方式意味着它们只有大约8位精度.因此,无论最少4个有效字节(另外9-10个数字)的值如何,它们都不具有存储长度的4个最高有效字节(大约9-10个数字)的能力.
因此,两个表达式的Float表示是相同的,因为不同的位低于Float的分辨率.因此,这两个值相等. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |