9.1 数值类型简介

在Scala中,所有的数值类型都是对象,包括Byte、Char、Double、Float、Int、Long和Short。这七个数值类型继承自AnyVal trait。它们的取值范围与Java一样:

数据类型 描述 大小 最小值 最大值
Char 无符号Unicode字符 2个字节 0 65536
Byte 有符号整数 1个字节 -128 127
Short 有符号整数 2个字节 -32768 32767
Int 有符号整数 4个字节 -2147483648 2147483647
Long 有符号整数 8个字节 -9223372036854775808 9223372036854775807
Float 有符号单精度浮点数 4个字节 n/a n/a
Double 有符号单精度浮点数 8个字节 n/a n/a

除了以上这些类型,还有代表真/假的Boolean类型。Boolean类型可以有true或false值。Unit和Boolean类被认为是“非数值值类型”。

如果想要知道准确的值的范围,可以象下面这样:

// 获取值的范围     
println(Byte.MinValue)         // -128
println(Byte.MaxValue) // 127

println(Short.MinValue)         // -32768
println(Short.MaxValue) // 32767

println(Int.MinValue) // -2147483648
println(Int.MaxValue)   // -3.4028235E38

println(Long.MinValue)         // -9223372036854775808
println(Long.MaxValue) // 9223372036854775807

println(Float.MinValue) // -3.4028235E38
println(Float.MaxValue) // 3.4028235E38

println(Double.MinValue) // -1.7976931348623157E308
println(Double.MaxValue) // 1.7976931348623157E308

println(Char.MinValue.toInt) // 0
println(Char.MaxValue.toInt) // 65535

还可以用标准数值类型的PositiveInfinity和NegativeInfinity来表示正无穷和负无穷:

Double.PositiveInfinity         // Double = Infinity
Double.NegativeInfinity // Double = -Infinity
1.7976931348623157E308 > Double.PositiveInfinity // Boolean = false
Double.MaxValue > Double.PositiveInfinity // Boolean = false
© 版权声明
THE END
喜欢就支持一下吧
点赞244赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

夸夸
夸夸
还有吗!没看够!
取消
昵称表情代码图片

    暂无评论内容