Ich sah einige Scala-Code, die "_" zu einem Feld der Klasse zuweisen, was bedeutet es? DankWas bedeutet es, "_" einem Feld in scala zuzuweisen?
private var tk: TaggedKey = _
Ich sah einige Scala-Code, die "_" zu einem Feld der Klasse zuweisen, was bedeutet es? DankWas bedeutet es, "_" einem Feld in scala zuzuweisen?
private var tk: TaggedKey = _
Es bedeutet: assign Standardwert. Der Standardwert ist definiert als null
, 0
oder false
, abhängig vom Zieltyp.
Es wird in 4.2 Variablendeklarationen beschrieben und Definitionen der The Scala Language Specification:
Eine variable Definition
var x : T = _
nur als Mitglied einer Vorlage erscheinen kann. Es führt ein veränderbares Feld mit Typ T und einem Standardinitialwert ein. Der Standardwert hängt vom Typ T wie folgt:
0
- wennT
Int ist oder einer seiner Unterbereichstypen,
0L
- wennT
ist lang,
0.0f
- wennT
Float ist ,
0.0d
- wennT
ist Double,
false
- wennT
ist Boolean,
()
- wennT
Einheit ist,
null
- für alle anderen ArtenT
.
http://stackoverflow.com/questions/9581444/first-steps-into-scala/9612735#9612735 (Ich habe versucht Überblick über ~ 10 Verwendungen von "_" in der Sprache: –