最佳Java Functor lib:JGA,commons functor,mango或......?

Sta*_*Man 7 java functor

我有兴趣在Java中使用仿函数(函数对象).通过快速谷歌搜索我发现这3个包:

而且,JGA似乎可能拥有最好的设计.但我怀疑其他人实际使用过一个或多个软件包可能能够提供更多关于这些(也许是其他)函子包的优缺点的见解.

tek*_*ara 8

芒果

提供0,1和2参数函数的接​​口.使用Java泛型.用于处理函数的良好算法范围.

JGA

提供0,1,2和任意数量的参数函数的类.域对象是这些的子类.使用Java泛型.广泛的算法.包括JFXG(Java Functor eXpression Grammar) - 一种解析语言,旨在使创建任意复杂的仿函数变得容易.提供多种算法来处理函数.

Apache Commons Functor

提供0,1和2参数函数的接​​口以及0,1和2参数过程(不返回任何值).使用Java泛型.良好的算法范围.

Google Guava(谷歌收藏)

为单个参数函数提供Function和Predicate接口.使用Java泛型.仅提供组合函数的撰写方法.很基本的.

FunctionalJ

提供0,1,2和任意数量的参数函数的接​​口和类.使用Java泛型.现有方法可以通过提供的函数反射类转换为函数.


Han*_*Gay 3

Google Collections Library提供了一个Function类似的界面(尽管可能没有那么深入)。