android kotlin其它(一)解构声明
2017-06-05 16:05
441 查看
有时把一个对象 解构 成很多变量会很方便,例如:
这种语法称为 解构声明 。一个解构声明同时创建多个变量。 我们已经声明了两个新变量:name 和 age,并且可以独立使用它们:
一个解构声明会被编译成以下代码:
其中的 component1() 和 component2() 函数是在 Kotlin 中广泛使用的 约定原则 的另一个例子。 (参见像 + 和 *、for-循环等操作符)。 任何表达式都可以出现在解构声明的右侧,只要可以对它调用所需数量的 component 函数即可。 当然,可以有 component3() 和 component4() 等等。
从函数中返回两个变量
让我们假设我们需要从一个函数返回两个东西。例如,一个结果对象和一个某种状态。 在 Kotlin 中一个简洁的实现方式是声明一个数据类(只保存数据的类)并返回其实例:
下划线用于未使用的变量
val (name, age) = person
这种语法称为 解构声明 。一个解构声明同时创建多个变量。 我们已经声明了两个新变量:name 和 age,并且可以独立使用它们:
println(name) println(age)
一个解构声明会被编译成以下代码:
val name = person.component1() val age = person.component2()
其中的 component1() 和 component2() 函数是在 Kotlin 中广泛使用的 约定原则 的另一个例子。 (参见像 + 和 *、for-循环等操作符)。 任何表达式都可以出现在解构声明的右侧,只要可以对它调用所需数量的 component 函数即可。 当然,可以有 component3() 和 component4() 等等。
从函数中返回两个变量
让我们假设我们需要从一个函数返回两个东西。例如,一个结果对象和一个某种状态。 在 Kotlin 中一个简洁的实现方式是声明一个数据类(只保存数据的类)并返回其实例:
data class Result(val result: Int, val status: Status) fun function(……): Result { // 各种计算 return Result(result, status) } // 现在,使用该函数: val (result, status) = function(……)
下划线用于未使用的变量
val (_, status) = getResult()
相关文章推荐
- Kotlin开发Android(2): Kotlin声明变量常量方法等基本语法
- 学习kotlin第13天_具体化的类型参数、内联属性、解构声明、集合
- Android@Kotlin(三)扩展变量与其它技巧
- Kotlin学习笔记(十)解构声明
- android Kotlin 对象表达式和对象声明
- Kotlin学习(十五): 解构声明(Destructuring Declarations)
- Kotlin解构声明和组件函数
- android kotlin其它(二)集合、区间、操作符
- Kotlin 其他(一) --- 解构声明(Destructuring Declarations)
- Destructuring Declarations in kotlin (kotlin的解构声明) 的正确打开方式
- Kotlin-解构声明
- Kotlin学习笔记5-1 其他-解构声明
- Kotlin-解构声明
- Kotlin-25.解构声明(Destructuring Declaration)
- Kotlin系列九----解构声明、集合
- Kotlin解构声明
- android中activity的声明周期
- Android4: ACTION_BOOT_COMPLETED开机启动程序需要声明权限
- Android开发之androidmanifest.xml中声明相关权限的说明
- android菜单详解五:菜单的其它特性