第六章 Kotlin之解构声明

有时把一个对象解构成很多变量会很方便,例如:

val (name , age) = person

这种语法称为解构声明。一个解构声明同时创建多个变量,并且可以独立使用它们:

println( “$name, $age”)

一个解构声明可以被编译成如下代码:

val name = person.component1()

val age = person.component2()

在实际开发中,我们偶尔会需要一个函数有两个返回值,例如:一个结果对象和一个某种状态,在Java中,我们可能会选择Object数组完成该功能,调用处进行相应的强转,或者定义一个实体类,比较麻烦。在Kotlin中一个更为简洁的实现方式是声明一个数据类并返回其对象:

《第六章 Kotlin之解构声明》

代码语法、逻辑都比较简单,不多做解释,有个小的注意点,如果解构声明中你不需要某个变量,可以使用下划线取代其名称:

如:val (_ , ss) = testDataBean()

自Kotlin1.1起,在lambda中也支持解构语法,如下面的实例代码,遍历map:

val vvv = map2.mapValues{(key,v)->”$key$v”}

val vvvv = map2.mapValues{entry:Map.Entry<String,Any>->”${entry.key} ${entry.value}”}

println(vvv)

    原文作者:红尘丶
    原文地址: https://www.jianshu.com/p/ceb9b4b8a804
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞