Kotlin简明学习,标准库中的let,apply,with,run方法

本文介绍了Kotlin中常见的四个函数:let, apply, with和run,详细解释了它们的使用场景和区别。let方法允许在lambda表达式中引用对象,apply返回对象本身并允许修改对象状态,with方法在一个对象上下文中执行操作但返回block的值,而run方法则同时修改对象状态并返回block的值。" 102462671,9088182,Python 布尔运算详解,"['Python编程', '逻辑运算', '数据类型']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Koltln标准库中有几个反方法很容易搞混,对初学者很难理解。他们分别是let,apply,with,run方法。熟练的使用他们可以让我们的代码更加优雅和可读

let方法

我用的Kotlin的标准库的版本是1.1.2-4,看看let方法的定义

/**
 * Calls the specified function [block] with `this` value as its argument and returns its result.
 */
@kotlin.internal.InlineOnly
public inline fun <T, R> T.let(block: (T) -> R): R = block(this)

我来分析下这个let方法的定义(个人观点,不对请雅正)
首先,这个let方法是一个扩展方法。是谁的扩展方法呢?是类型T的扩展方法。这些方法的定义都用到了泛型。所以我们写let方法的时候是这样写的:类实例+点+let。

其次,这个let方法接收一个参数,参数是个方法。这个方法的名字叫block。let接收的方法是一个穿入值是T类型返回值是R类型的方法。并且我们知道这个方法的反回值就是整个let方法的返回值。绕口,见谅。

最后,block(this)是整个let方法的定义,记住let方法是有返回值的。

Example:

    val result ="Hello World".let {
        println(this)
        println(it)
        520
    }

    println(result)

“Hello Wrold”就是我们let定义中的T。是一个

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值