【第10篇】Kotlin的data数据类

2019-06-26  本文已影响0人  爱学习的蹭蹭

1、数据类

data class User(val name: String, val age: Int)



自 1.1 起,数据类可以扩展其他类,示例请参见 密封类

data class User(val name: String = "", val age: Int = 0)

2、 在类体中声明的属性

data class Person(val name: String) {
    var age: Int = 0
}
val person1 = Person("John")
val person2 = Person("John")
person1.age = 10
person2.age = 20

3、复制

fun copy(name: String = this.name, age: Int = this.age) = User(name, age)
val jack = User(name = "Jack", age = 1)
val olderJack = jack.copy(age = 2)

4、数据类与解构声明

val jane = User("Jane", 35)
val (name, age) = jane
// 输出 "Jane, 35 years of age"
println("$name, $age years of age") 

5、标准数据类

标准库提供了 Pair 与 Triple。尽管在很多情况下命名数据类是更好的设计选择, 因为它们通过为属性提供有意义的名称使代码更具可读性。


文章来自koltin英文社区
文章来自koltin中文社区

上一篇下一篇

猜你喜欢

热点阅读