【发布时间】:2012-04-06 08:15:24
【问题描述】:
我看到一些将“_”分配给类字段的scala代码,这是什么意思?谢谢
private var tk: TaggedKey = _
【问题讨论】:
-
stackoverflow.com/questions/9581444/first-steps-into-scala/…(我尝试概述了语言中“_”的 10 种用法:
我看到一些将“_”分配给类字段的scala代码,这是什么意思?谢谢
private var tk: TaggedKey = _
【问题讨论】:
意思是:分配默认值。默认值定义为null、0 或false,具体取决于目标类型。
在The Scala Language Specification的4.2 变量声明和定义中有描述:
变量定义
var x : T = _只能作为模板的成员出现。它 引入了一个类型为 T 和默认初始值的可变字段。默认值 取决于类型 T 如下:
0- 如果T是 Int 或其子范围类型之一,
0L- 如果T是长的,
0.0f- 如果T是浮点数,
0.0d- 如果T是 Double,
false- 如果T是布尔值,
()- 如果T是单位,
null- 适用于所有其他类型T。
【讨论】: