注意:如果你只是想跳过上下文,请直接跳到下面的"问题"。
在讲述Scala时,我通常会讲解以下类似的“玩具问题”作为部分应用函数的示例。
def multiply(x:Int, y:Int): Int = x * y
val x5 = multiply(5, _:Int)
x5(10) //produces 50
这个例子确实有帮助,但对于我来说很难解释何时应该使用部分应用函数的一般性概念。
问题: 有没有人有自己成功解释部分应用函数的方法,特别是对于Java(或其他面向对象语言)开发人员?