因为我有一个具有 2 个参数的 User
类:first_name、last_name。所以我的 kotlin 类是:
data class User(val first_name:String, val last_name:String)
现在我想要一个只接受 first_name
的构造函数,或者你可以只说一个参数。如何用 Kotlin
定义它?
我知道我们可以传递默认值,这样我们就可以忽略第二个参数,但是我们如何编写多个构造函数呢?
最佳答案
你可以在类体中定义额外的构造函数
data class User(val firstName: String, val lastName: String) {
constructor(firstName: String) : this(firstName, "")
}
这些“辅助构造函数”必须调用主构造函数或不同的辅助构造函数。见 Official documentation on constructors .
因此,实际上这与带有默认参数的主构造函数相同,这将是惯用的方式。
data class User(val firstName: String, val lastName: String = "")
关于android - Kotlin 的构造函数重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44176210/