Mic*_*ael 8 null casting scala
我在REPL中尝试了以下内容:
scala> null.asInstanceOf[Int] res12: Int = 0 scala> null.asInstanceOf[Float] res13: Float = 0.0 scala> null.asInstanceOf[Double] res14: Double = 0.0
在这种情况下,它会期望运行时异常(NPE
或ClassCastException
).
有人可以解释为什么 Scala会null
归零吗?
这真的很奇怪,因为它不是根据规范预期的行为:
asInstanceOf[T]
null
如果T
符合scala.AnyRef
,则返回对象本身,NullPointerException
否则返回.- Scala语言规范,版本2.9,p.75.
归档时间: |
|
查看次数: |
7577 次 |
最近记录: |