美文网首页
10.数据类

10.数据类

作者: 学吉他的袁先生 | 来源:发表于2020-07-28 14:57 被阅读0次

1.对应java中的javabean,主动生成hashcode,toString,copy等方法
2.主构造器里面有多少个成员属性,就会生成多少个component方法

data class Country(val id: Int, val name: String)

fun main() {
    val china = Country(0, "中国")
    println(china.id)
    println(china.name)
    println(china.component1())
    println(china.component2())
}

还可以这样子创建对象

val (id, name) = Country(0, "中国")
println(id)
println(name)

下面的集合的遍历,就是这样子写法

for ((index,value) in args.withIndex()){
    println(index)
    println(value)
}

args.withIndex()的源码

public fun <T> Array<out T>.withIndex(): Iterable<IndexedValue<T>> {
    return IndexingIterable { iterator() }
}

IndexedValue源码

//Kotlin 中可以声明泛型类型是协变还是逆变的. out 修饰类型参数是协变的, in 修饰的类型参数支持逆变.
public data class IndexedValue<out T>(public val index: Int, public val value: T)

相关文章

  • 10.数据类

    1.对应java中的javabean,主动生成hashcode,toString,copy等方法2.主构造器里面有...

  • 52个有效方法(10) - 在既有类中使用关联对象存放自定义数据

    10. 在既有类中使用关联对象存放自定义数据 “关联对象”(Associated Object) 是指动态创建一个...

  • 10.元类

    元类的对象是类type是python的内建元类 自定义元类:

  • Effective Objective-C 2.0 读书笔记二(

    10. 在既有类中使用关联对象存放自定义数据 注意关键词“关联对象”,就是把两个对象关联起来,例如把对象B关联到对...

  • Zookeeper(七)-服务端集群模式-启动流程-2

    接上一节继续 10. Follower接收同步数据(Learner.syncWithLeader) readPac...

  • 10. 类和对象

    类的属性可以使用 var 声明变量,可以使用 val 声明常量。属性的引用可以用 (.)符号来实现。属性取值和赋值...

  • 10. 类中风(一)

    原文 唐翁道彰,家素封,重享受,喜肥甘,多内欲,外表虽硕胖,而内实虚乏也。1946年冬以儿婚操劳,气血暗耗,肝火内...

  • 10.类与对象

    对象 对象是一类事物的具体体现。对象是类的一个实例,必然具备该类事物的属性和行为。 面向对象:关注点是具体的事物数...

  • 10.压缩解压类

    压缩和解压类 压缩指令gzip,解压缩指令gunzipgzip 文件 // 压缩文件,只能压缩成....

  • 10.数据输入

    #include using namespace std; int main() { string str = "...

网友评论

      本文标题:10.数据类

      本文链接:https://www.haomeiwen.com/subject/jhmfrktx.html