Scala ではどのようにプライマリ コンストラクターでローカル変数を定義できますか?
私は本からこの演習を解決する必要がありますScala for the impatient
:
new Person("Fred Smith") のように、名前、スペース、および姓を含む文字列を受け入れるプライマリ コンストラクターを持つクラス Person を記述します。読み取り専用プロパティの firstName と lastName を指定します。プライマリ コンストラクターのパラメーターは、var、val、またはプレーン パラメーターのどれにする必要がありますか? なんで?
そして今のところ、私のソリューションは次のようになります。
class Person(firstLast: String) {
private[this] val firstLastAsArr = firstLast.trim.split(" ")
val firstName = firstLastAsArr (0)
val lastName = firstLastAsArr (1)
}
変数の可視性をプライマリ コンストラクター スコープに制限するにはどうすればよいfirstLastAsArr
ですか (クラス スコープを持つようになりました)。