数据类中的参数可以在Kotlin中变化吗?

时间:2018-04-06 08:31:20

标签: android kotlin

我是Kotlin的初学者,我已经阅读了一些关于数据类的示例代码,似乎参数都是val类型,就像代码A

我需要更改数据类MSetting的某些值,所以我设计了代码B,你能告诉我代码B是否是好方法吗?

代码A

data class MSetting (
        val _id: Long, 
        val name: String,
        val createdDate: Long,
        val description: String
)

代码B

data class MSetting (
        var _id: Long, 
        var name: String,
        var createdDate: Long,
        var description: String
)

1 个答案:

答案 0 :(得分:4)

  

似乎参数都是val类型...

  

你能否告诉我代码B是否是好方法?

valvar之间的差异:使用val声明的属性无法随时更新;它就像java中的常量一样。使用var声明的属性可以随时更改。

这完全取决于您的要求。如果您需要随时间更改属性,请转到var;否则val。你可以在一个对象中混合两者而没有任何问题。

在此处阅读有关Kotlin文档中属性的更多信息https://kotlinlang.org/docs/reference/properties.html