Java 8:使用方法引用获取Operator-Function-Object

F. *_*ler 8 java lambda java-8 method-reference

我想知道Java 8中是否有可能获得标准运算符的方法引用(+, - ,<,>,...).

我希望得到它,就像Foo::+Foo是我可以得到它的一些定义的地方.由于Java不允许方法名称中的特殊字符,我认为不可能,是吗?

如果上面的方法不存在:是否有一些标准运算符被定义的地方Foo::plus

我知道将它定义为lambda((x, y) -> x + y)是可能的,但在我看来,在某些情况下,它可能更具表现力,在Haskell中可以使用对运算符的方法引用.

Mar*_*nik 7

我相信你正在寻找int Integer.sum(int, int)和类似的方法,这些方法确实由API提供.

您的列表中有许多方法缺失,但JDK通常不提供最后一英寸的便利,因为即使没有这些方法,它的大小也是巨大的.

如果这是任何安慰,我的每个项目都有一个Util类,我可以转储这些花絮.