我看到一些将“_”分配给类字段的scala代码,这是什么意思?谢谢
private var tk: TaggedKey = _
这意味着:分配默认值。默认值定义为null
,0
或false
取决于目标类型。
它在Scala 语言规范的4.2 变量声明和定义中进行了描述:
变量定义
var x : T = _
只能作为模板的成员出现。它引入了一个类型为 T 和默认初始值的可变字段。默认值取决于类型 T,如下所示:
0
- 如果T
是 Int 或其子范围类型之一,
0L
- 如果T
是长,
0.0f
- 如果T
是浮点数,
0.0d
- 如果T
是双倍,
false
- 如果T
是布尔值,
()
- 如果T
是单位,
null
- 对于所有其他类型T
。