Lambda表达式
来源:3-10 小案例:命令行计数器开发

慕妹2978617
2019-11-16
这段表达式有些看不懂了 首先问题2,之前我们定义属性的值是方法的时候是这样写的 val opFun={()->Int} 一个属性的值是一个匿名Lambda函数的方法,返回值就是这个函数的返回值Int,中间是用等号链接的 问题二中是用的: val 参数:类型 这表示定义属性的方法 那这么写之后是不是其实是定义的属性的值呢 那问题二的值类型是什么值什么什么返回值类型是Double?问题3中的“+”->{}这个括号中的书写格式是根据问题2定义的才这么写的吗?这个opFun为什么不像问题1那样写 问题2的表达式总是感觉怪怪的,之前lambda章节好像没这么讲过。能说明下这段的含义吗?
写回答
3回答
-
bennyhuo
2019-11-16
问题1是定义了一个变量,赋值为等号后面的lambda表达式,这个表达式接受两个参数,返回了Double这个值,箭头后面的Double是表达式的返回值,不是返回值类型,箭头前面的是参数类型。
你应该是把Lambda和函数类型的写法混淆了,我记得这块儿在3.2节讲过,可以再复习一下哈
00 -
bennyhuo
2019-11-16
问题3的地方就是lambda的值,类型要求就是opfunc声明的类型
00 -
bennyhuo
2019-11-16
问题二的位置是变量声明,没有初始化,变量后面的冒号后是类型
00
相似问题
函数的返回值类型省略问题
回答 1
关于Lambda表达式
回答 1