Kotlin 数据类在创建后不能直接修改其属性值。数据类主要用于创建不可变的数据对象,它们会自动生成一些通用方法,如 equals()
、hashCode()
和 toString()
等。
如果你需要修改数据类的属性值,可以采取以下方法:
MutableDataClass
(在 Kotlin 1.4 及更高版本中可用)。这样,你可以直接修改属性值。data class MutableDataClass(var property: String)
copy()
方法:创建一个新的数据类实例,并将原始实例的属性值复制到新实例中,然后修改新实例的属性值。data class DataClass(val property: String) {
fun updateProperty(newProperty: String): DataClass {
return copy(property = newProperty)
}
}
请注意,使用 copy()
方法会创建一个新的数据类实例,而不是修改原始实例。这有助于保持数据的不可变性和安全性。