请稍等 ...
×

采纳答案成功!

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

Lambda表达式

图片描述这段表达式有些看不懂了 首先问题2,之前我们定义属性的值是方法的时候是这样写的 val opFun={()->Int} 一个属性的值是一个匿名Lambda函数的方法,返回值就是这个函数的返回值Int,中间是用等号链接的 问题二中是用的: val 参数:类型 这表示定义属性的方法 那这么写之后是不是其实是定义的属性的值呢 那问题二的值类型是什么值什么什么返回值类型是Double?问题3中的“+”->{}这个括号中的书写格式是根据问题2定义的才这么写的吗?这个opFun为什么不像问题1那样写 问题2的表达式总是感觉怪怪的,之前lambda章节好像没这么讲过。能说明下这段的含义吗?

正在回答 回答被采纳积分+3

3回答

bennyhuo 2019-11-16 12:30:07

问题1是定义了一个变量,赋值为等号后面的lambda表达式,这个表达式接受两个参数,返回了Double这个值,箭头后面的Double是表达式的返回值,不是返回值类型,箭头前面的是参数类型。

你应该是把Lambda和函数类型的写法混淆了,我记得这块儿在3.2节讲过,可以再复习一下哈

0 回复 有任何疑惑可以回复我~
bennyhuo 2019-11-16 12:24:56

问题3的地方就是lambda的值,类型要求就是opfunc声明的类型

0 回复 有任何疑惑可以回复我~
bennyhuo 2019-11-16 12:22:09

问题二的位置是变量声明,没有初始化,变量后面的冒号后是类型

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信