0
我想初始化Int
类型的变量作为斯卡拉null
,但我不能这样做 -为什么Int不能在Scala中初始化为null?
scala> val a: Int = null
<console>:11: error: an expression of type Null is ineligible for implicit conversion
val a: Int = null
但我可以在Scala中初始化String
类型的变量作为null
:
scala> val a: String = null
a: String = null
任何人都知道它的原因?
注意 - 我使用Scala的2.11.8
不是问题的答案,但将它声明为'Option [Int]'会更正常(更好),这样你就可以清楚地知道它可能不是,而空值总是令人讨厌的惊喜 –
这很好@RichardTingle,我使用'Option [Int]'来代替'null'。但是,那么为什么Scala允许我为'String'类型执行它? – himanshuIIITian
请参阅http://stackoverflow.com/questions/39210830/why-in-scala-long-cannot-in-initialized-to-null-whear-as-integer-can – nmat