android kotlin其它(一)解构声明

来源:互联网 发布:获取网页局部源码 编辑:程序博客网 时间:2024/05/16 04:21

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

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()
原创粉丝点击