0. 隐式参数与隐式转换
- scala 的 REPL 中使用
scala> :implicit -v
查看 Predef.scala 中定义的全部隐式转换函数;- 全部由implicit修饰;
1 to 10
等价于1.to(10)
- .to 不是 Int.scala 中的方法,而是 RichInt.scala 中的方法;
1. 数值类
-
Int
Int.MaxValue
:Int = 2147483647Int.MinValue
:Int = -2147483648
-
Double to Long/Int
- x.asInstanceOf[Number].longValue ⇒ 转换为 long
- x.asInstanceOf[Number].intValue ⇒ 转换为 int
- Math.pow(2, 31) ⇒ Double = 2.147483648E9
- (Math.pow(2, 31)-1).asInstanceOf[Number].intValue ⇒ Int = 2147483647
2. 数值类型转换:用(成员)方法而不是强制类型转换
scala> 99.4.toInt(不需加括号)
Int = 99
scala> 99.4.toInt.toChar
Char = c
scala> "99.4".toDouble
Double = 99.4