如何在 Scala 中在主构造函数中定义局部变量?
我需要从Scala for the impatient
书中解决这个练习:
编写一个 Person 类,其主构造函数接受包含名字、空格和姓氏的字符串,例如 new Person("Fred Smith")。提供只读属性 firstName 和 lastName。主构造函数参数应该是 var、val 还是普通参数?为什么?
现在我的解决方案如下所示:
class Person(firstLast: String) {
private[this] val firstLastAsArr = firstLast.trim.split(" ")
val firstName = firstLastAsArr (0)
val lastName = firstLastAsArr (1)
}
如何将firstLastAsArr
变量可见性限制在主构造函数范围(现在它具有类范围)?