您的位置:首页 > 移动开发 > Android开发

android kotlin其它(一)解构声明

2017-06-05 16:05 441 查看
有时把一个对象 解构 成很多变量会很方便,例如:

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()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android