看不到就不看了呗,听着 和看有什么区别
视频有问题,求改!!!
评论有对应内容。
有的, 高阶函数就是可以把函数作为参数的函数或是把函数return的函数。
以函数参数为例:
def add(x: Int, y: Int): Int = {x + y}
def add2(z: Int) = {z + 2}
val k = add2(add(1, 2))
add2的参数就是函数add
刚才测试了一下:话不多说看代码:
package scala.jeny
object Greeting extends App {
//定义一个无参匿名函数,返回一个Int类型,并使用变量anonymous接收
val anonymous = () => 10;
//定义一个加法函数,函数名为add,接受一个无参函数,并对这个函数进行两次计算并求和
//可以说就是一个call-by-name的语法
//这个点上可以传入无参函数,也可以传入一个表达式,个人认为前者就是后者包涵的部分
def add(b:() => Int) = {
b() + b();
};
println(add(anonymous));
}
是啊,一楼那里有例子,和老师说的一个意思
是的,可能是视频卡了
什么问题?看不了的话就更新下软件,或者换下线路。如果知识点错了请更正。
找个入门的pdf或者站点补充一下吧
1. 调用高阶函数,这个高阶函数返回另一个函数。
def a = greeting();
2. 调用高阶函数返回的函数。
a("Jack");
是有问题,全白的看不到