setValue
所在位置是kotlin.setValue
,其相关用法介绍如下。
用法一
一个扩展运算符,允许将类型为 V 的可变属性委托给对相同类型 V 的可变属性的属性引用。
接收者
对 V 类型的可变属性的属性引用。引用没有接收器,即它引用顶级属性或将接收器绑定到它。
例子:
class Login(val username: String, var incorrectAttemptCounter: Int = 0)
val defaultLogin = Login("Admin")
var defaultLoginAttempts by defaultLogin::incorrectAttemptCounter
// equivalent to
var defaultLoginAttempts: Int
get() = defaultLogin.incorrectAttemptCounter
set(value) { defaultLogin.incorrectAttemptCounter = value }
用法二
扩展运算符,允许将类型为 V 的可变成员或扩展属性委托给对相同类型 V 的成员或扩展可变属性的属性引用。
接收者
对 V 类型或其子类型的只读或可变属性的属性引用。该引用具有类型为 T 的未绑定接收器。
例子:
class Login(val username: String, var incorrectAttemptCounter: Int)
var Login.attempts by Login::incorrectAttemptCounter
// equivalent to
var Login.attempts: Int
get() = this.incorrectAttemptCounter
set(value) { this.incorrectAttemptCounter = value }
相关用法
- Kotlin scan用法及代码示例
- Kotlin sortedBy用法及代码示例
- Kotlin splitToSequence用法及代码示例
- Kotlin scanIndexed用法及代码示例
- Kotlin sort用法及代码示例
- Kotlin sortWith用法及代码示例
- Kotlin associateBy用法及代码示例
- Kotlin all用法及代码示例
- Kotlin map用法及代码示例
- Kotlin filterNot用法及代码示例
- Kotlin reduceRight用法及代码示例
- Kotlin Random.Default用法及代码示例
- Kotlin Byte.inc用法及代码示例
- Kotlin getValue用法及代码示例
- Kotlin Double.dec用法及代码示例
- Kotlin windowedSequence用法及代码示例
- Kotlin contentToString用法及代码示例
- Kotlin groupByTo用法及代码示例
- Kotlin commonPrefixWith用法及代码示例
- Kotlin MatchResult.Destructured用法及代码示例
- Kotlin Delegates.notNull用法及代码示例
- Kotlin ifBlank用法及代码示例
- Kotlin filterNotTo用法及代码示例
- Kotlin getOrPut用法及代码示例
- Kotlin Triple.<init>用法及代码示例
注:本文由纯净天空筛选整理自kotlinlang.org大神的英文原创作品 kotlin.setValue。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。