Android开发经验谈程序员Android技术知识

kotlin 基础 17 data 类

2019-04-16  本文已影响11人  zidea
kotlin.jpeg
data class Tut(
    var title:String,
    var courses:Int,
    var author:String
    )

data class 作为轻量级的 class 主要用于存储数据,类似最近学习的 go 和 rust 语言中struct,主要用于定义数据的形状和结构

fun main(){

    var angularTut = Tut("angular base tutorial",10,"zidea")
    println(angularTut.hashCode())
    println(angularTut.toString())

}
1093425654
Tut(title=angular base tutorial, courses=10, author=zidea)

复制副本

val tutCopy = angularTut.copy()
 val tutCopy = angularTut.copy("copy angular base tutorial")

    println(tutCopy.toString())

可以通过调用 componentx 方法按顺序获取对象的属性值


    println(angularTut.component1()) // title
    println(angularTut.component2()) // courses
val (title,_,author) = angularTut;
    println(title)
    println(author)

这里又看到 javascript 解构影子,现在语言间相互影响太深了,一个好的特征,你上了我马上也上。就像 rob pike 说的有点失去自己的特点了。

kotlin_end.jpg
上一篇 下一篇

猜你喜欢

热点阅读