当前位置: 首页 > news >正文

北京做网站找哪家好牡丹江最新信息网

北京做网站找哪家好,牡丹江最新信息网,wordpress页首文件,做黏土的网站一、图示 二、apply apply 函数接收一个对象并返回该对象本身。它允许您在对象上执行一些操作&#xff0c;同时仍然返回原始对象。 这个函数的语法为&#xff1a; fun <T> T.apply(block: T.() -> Unit): T 其中&#xff0c;T 是对象的类型&#xff0c;block 是一…

一、图示 

二、apply

apply 函数接收一个对象并返回该对象本身。它允许您在对象上执行一些操作,同时仍然返回原始对象。

这个函数的语法为:

fun <T> T.apply(block: T.() -> Unit): T

其中,T 是对象的类型,block 是一个 lambda 表达式,可以在该对象上执行一些操作。在这个 lambda 中,您可以使用 this 关键字来引用当前对象。

例如:

val person = Person().apply { name = "wsy" age = 20 address = "HangZhou" }

在这个例子中,我们创建了一个 Person 对象并在 apply 函数中设置了该对象的属性。最终返回的是这个 Person 对象本身。

三、let

let 同样是一个扩展函数,它也接收一个 Lambda 表达式作为参数。不同于 apply,在 Lambda 表达式中,let 函数将接收者对象作为 Lambda 的参数,通常用 it 作为隐式名称。let 函数的返回值是 Lambda 表达式的结果。

这个函数的语法为:

kotlinCopy code fun <T, R> T.let(block: (T) -> R): R

其中,T 是对象的类型,R 是返回值的类型,block 是一个 lambda 表达式,它对该对象进行一些操作并返回一个结果。

val person = Person("Alice", 25) val ageAfterFiveYears = person.let { it.age + 10 }

在这个示例中,let 函数用于计算 Person 对象五年后的年龄。

四、also

also 是一个扩展函数,与 apply 类似,但有一个关键区别:also 函数的返回值是接收者对象本身,而 Lambda 表达式的参数是接收者对象,通常用 it 作为隐式名称。 这个函数的语法为:

fun <T> T.also(block: (T) -> Unit): T

其中,T 是对象的类型,block 是一个 lambda 表达式,可以在该对象上执行一些操作。在这个 lambda 中,您可以使用 it 关键字来引用当前对象。

val person = Person("XiaoYan", 18).also { it.name = "Wsy" it.age = 20 }

在上述示例中,also 函数用于修改 Person 类的属性,最后返回修改后的对象。

五、run

run 是一个扩展函数,它结合了 applylet 的特点。run 函数在 Lambda 表达式中直接访问接收者对象的属性和方法,同时返回 Lambda 表达式的结果。

这个函数的语法为:

fun <T, R> T.run(block: T.() -> R): R

其中,T 是对象的类型,R 是返回值的类型,block 是一个 lambda 表达式,它对该对象进行一些操作并返回一个结果。在这个 lambda 中,您可以使用 this 关键字来引用当前对象。

val person = Person("Wsy", 25) 
val greeting = person.run { "Hello, $name! You are $age years old." }

在这个示例中,run 函数用于生成一个包含 Person 对象信息的字符串。

六、总结

四个函数的相同点是,它们都可以操作对象,并可以在 lambda 中引用当前对象。但是,它们的返回值和返回时机有所不同。

apply 和 also 函数的返回值是该对象本身,而 let 和 run 函数的返回值是 lambda 表达式的结果。

apply 函数在对象上执行一些操作,并返回该对象本身。它通常用于在对象创建后立即对其进行初始化。

also 函数类似于 apply 函数,但它返回原始对象的引用。它通常用于对对象进行一些副作用,例如打印日志或修改对象状态。

let 函数在 lambda 中对对象进行一些操作,并返回 lambda 表达式的结果。它通常用于在某些条件下对对象进行转换或计算。

run 函数类似于 let 函数,但它返回 lambda 表达式的结果。它通常用于对对象进行计算,并返回计算结果。

总之,这四个函数都是非常有用的函数式编程工具,可以帮助您以简洁、可读性强的方式操作对象和代码块。对于每个情况,您应该选择最合适的函数,以便以最有效的方式编写代码。

 

http://www.yayakq.cn/news/820672/

相关文章:

  • 重庆建网站计划网站制作视频教程大全
  • 泉州市城乡和住房建设网站深圳深圳网站开发
  • 地方门户网站如何推广wordpress如何自建页面
  • 怎么做新网站才能被百度收录河南建设工程网
  • 广西微信网站建设wordpress 无法发送邮件
  • 团队云智能网站建设制作移动网站公司
  • 销售渠道建设网站鞍山玉佛苑玉佛图片
  • 校园文化建设网站易语言 wordpress登录
  • 深圳专业做网站的公司有哪些网页是怎么做的
  • HTML5网站建设案例领导交给你一个网站你该怎么做
  • 在网站文章锚文本怎么做管理咨询公司项目运作流程图
  • 免费的微网站制作海尔网站建设水平
  • 免费 网站 模板筑建网
  • 电商网站开发框架建站之星凡客
  • 无锡企业网站设计网站空间流量6g
  • 营销网站建设评估及分析“网站建设:上海珍岛”
  • 衡水专业做网站网站诊断方法
  • 网站建设与维护一样吗网站建设柒金手指下拉二一
  • 重庆网站建设多少钱购买模板做网站
  • 叮当网站做app建企业门户网站
  • 做网站什么笔记本好用网站开发的现状分析
  • 网站投票系统 js免费商标设计网
  • 建设网站外国人可搜到网页制作能干什么
  • 苏州网站搜索优化咕果网给企业做网站的
  • 网站建设基础资料南苑网站建设
  • 高品质的网站开发企业小程序怎么申请注册
  • cms企业网站源码互联网大赛官网入口
  • 如何做免费的公司网站网络广告策划书2000字
  • html 手机网站认可服务好的装修公司
  • 珠宝店网站项目网页设计wordpress个人电脑搭建