Java 8中为操作员提供的便利功能?

帕特里克·柯林斯

在Python中,如果要对xor操作进行折叠,可以编写:

reduce(operator.xor, my_things, 0)

而不是比较麻烦

reduce(lambda x, y: x^y, my_things, 0)

新的Java 8功能特性中是否有类似的东西?例如写这样的东西

myThings.reduce(0, Integer::xor)

而不是

myThings.reduce(0, (x, y) -> x ^ y)
Sotirios Delimanolis

Integer#sum(int, int)你在包专用表明这是用来IntPipeline,但对于其他数值运营商没有类似的方法。

@Override
public final int sum() {
    return reduce(0, Integer::sum);
}

您可以自己定义它们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章