ITPub博客

首页 > IT职业 > IT生活 > Kotlin学习笔记三 (高级特性)

Kotlin学习笔记三 (高级特性)

IT生活 作者:kalt 时间:2021-09-09 10:08:58 0 删除 编辑

Kotlin中的解构

Kotlin中解构的意思是,允许一个类去拆解,然后分别赋值。详见下面的代码:
定义个Boy类,使用operator关键字,去声明component1() 和component2()函数
这个函数名不能修改,component后面的1 和 2 的对应就是要拆解的第一个属性,和第二个属性,如果有多个属性需要结构,可以继续增加component3() component4()等...

class Boy(var age: Int,var name: String) {    operator fun component1() = age    operator fun component2() = name
}
fun main(args: Array<String>) {    //1.首先创建一个Boy对象
    var boy = Boy(11,"213")    //2.使用Kotlin中解构,将boy对象解构
    //将对象中的属性分别赋值给age和name,其中age对应 component1()函数返回的属性
    //name 对应 component2()返回的属性
    var(age,name) = boy

    println("age:$age")
    println("name:$name")    
    //解构可用于循环Map集合
    var map:Map<Int,String> = mapOf<Int,String>(1 to "111",2 to "222")    for ((k,v) in map){
        println("$k ---- $v")
    }

}



作者:Cloud_9527
链接:https://www.jianshu.com/p/4d2c0ba889f4


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1805/viewspace-2817469/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-04-15

  • 博文量
    121
  • 访问量
    892