如何为 kotlin 的数据 class 中的辅助构造函数建立 getter & setter?

How to establish getter & setter for secondary constructor in data class for kotlin?

我需要一个 数据 class 两个不同的构造函数 ,如图所示。但是我如何在 Kotlin 中为 data class 的辅助构造函数 做 getter & setter?我尝试了多项更改,无法弄清楚。在下面的代码片段中,我没有为 get()set() 获得正确的 import

data class user(var phone: String) {
    constructor(phone: String, name : String) : this(phone) {
        var name: String = name
        get()= field
        set(value) {
            field = value
        }
      }
    }

您似乎需要两个构造函数,一个只需要一个 "phone" 参数,另一个需要一个 "phone" 和 "name" 参数。总体而言,无论使用哪个构造函数,您的数据 class 都将具有两个属性:phonename。您可以通过以下方式完成此操作:

data class User(var phone: String) {

    var name: String = ""

    constructor(phone: String, name: String) : this(phone) {
        this.name = name
    }
}

但是,由于这是 Kotlin,您应该 prefer default parameter values over overloaded functions/secondary constructors:

data class User(var phone: String, var name: String = "")