美文网首页我爱编程
Kotlin学习笔记三 (高级特性)

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

作者: Cloud_9527 | 来源:发表于2018-08-06 23:18 被阅读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")
        }
    
    }
    
    
    
    

    相关文章

      网友评论

        本文标题:Kotlin学习笔记三 (高级特性)

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