在Scala中,'val a:A = _'(下划线)是什么意思?
val a: A = _
初始化值是什么? 这是一个types为空? 谢谢。
val a: A = _
是一个编译错误。 例如:
scala> val a: String = _ <console>:1: error: unbound placeholder parameter val a: String = _ ^
什么工作是var a: A = _
(注意var
而不是val
)。 正如Chuck在他的回答中所说的,这个variables初始化为默认值。 从Scala语言规范:
0如果T是Int或其子范围types之一,
0L如果T是长的,
如果T是Float,
如果T是双重的,
如果T是布尔值,则为false,
()如果T是单位,
对于所有其他types为空的T.
它将a
初始化a
A
的默认值。 例如,Int的默认值为0,引用types的默认值为null。