如果没有这样的构造函数可以设置所有必需的成员,我如何在一个表达式中设置它们,而不是逐行设置它们?
class Time {
var hour = 0
var min = 0
var sec = 0
}
fun main() {
val time = Time()
time.hour = 2
time.min = 41
time.sec = 27
}
可以使用作用域函数apply{}
:
fun main() {
val time = Time().apply { // `this` keyword can be used to refer the object
hour = 2 // this.hour also accepted
min = 41
sec = 27
}
}
同一行中的表达式:
val time = Time().apply { hour = 2; min = 41; sec = 27 }