val a: A = _
値を具体的に何に初期化するのでしょうか? これは型指定された null ですか? ありがとうございます。
ベストアンサー1
val a: A = _
コンパイルエラーです。例:
scala> val a: String = _
<console>:1: error: unbound placeholder parameter
val a: String = _
^
実際に機能するのはvar a: A = _
(var
ではなくval
) です。Chuck が回答で述べているように、これは変数をデフォルト値に初期化します。Scala 言語仕様より:
T が Int またはそのサブ範囲型のいずれかの場合は 0、
T が Long の場合は 0L、
T が Float の場合は 0.0f、
T が Double の場合は 0.0d、
T が Boolean の場合は false、
T が Unit の場合は ()、
その他のすべての型 T の場合は null。