Julia函数作为参数
例子
函数是Julia中的对象。像任何其他对象一样,它们可以作为参数传递给其他函数。接受函数的函数称为高阶函数。
例如,我们可以foreach通过将函数f作为第一个参数来实现标准库函数的等价物。
function myforeach(f, xs)
for x in xs
f(x)
end
end我们可以测试这个函数确实按我们的预期工作:
julia> myforeach(println, ["a", "b", "c"]) a b c
通过将函数作为第一个参数而不是后面的参数,我们可以使用Julia的do块语法。do块语法只是一种将匿名函数作为第一个参数传递给函数的便捷方式。
julia> myforeach([1, 2, 3]) do x
println(x^x)
end
1
4
27我们myforeach上面的实现大致相当于内置foreach函数。还存在许多其他内置的高阶函数。
高阶函数非常强大。有时,在使用高阶函数时,正在执行的确切操作变得不重要,程序可能变得非常抽象。组合器是高度抽象的高阶函数系统的例子。
热门推荐
1 训练狗狗基础
2 怎么训练狗狗笑
3 怎么训练狗狗卧下
4 上海狗狗训练基地
5 训练狗狗排便
6 狗狗基础训练
8 如何训练狗狗装死
9 狗狗站姿训练
10 狗狗训练用品
11 训练狗狗吧
12 狗狗要怎么训练
13 怎么训练狗狗玩球
14 训练狗狗唤回
15 狗狗训练躺下
16 狗狗训练指令
17 狗狗的训练技巧
18 狗狗不好训练