请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

let的返回值

val person = findPerson()?.let{ person->
person.name = “sda” //
println(person.age)
person.age = 1
}
老师,问一下,这个let的返回值到底是什么意思…

正在回答

2回答

let的返回值是lambda的返回值,你贴的代码是person.xxx=yyy的值也就是Unit了,而let前面是 ?.,所以最终赋值给变量变量的类型是Unit?类型

1 回复 有任何疑惑可以回复我~
  • 提问者 慕尼黑9447469 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2019-11-14 12:58:27
  • 提问者 慕尼黑9447469 #2
    嗯嗯,后来已经弄清楚啦
    回复 有任何疑惑可以回复我~ 2019-11-14 12:59:17
bennyhuo 2019-11-14 12:49:12

这里用also更合适,also的返回值是receiver

0 回复 有任何疑惑可以回复我~
  • 提问者 慕尼黑9447469 #1
    好的,回头去看一下~
    回复 有任何疑惑可以回复我~ 2019-11-14 12:59:37
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号