Stream <BigDecimal>是否有可变的减少操作(收集器)?

Rol*_*and 1 java java-stream collectors

AFAIK总结流的唯一方法BigDecimal是:

BigDecimal result = stream.reduce(BigDecimal.ZERO, BigDecimal::add);
Run Code Online (Sandbox Code Playgroud)

这里的问题是每次调用BigDecimal::add都会创建一个新的BigDecimal而不是更改一个可变类型.

是否有一个可变减少操作又名CollectorStream<BigDecimal>

Kis*_*kae 5

BigDecimal:"不可变,任意精度的有符号十进制数."

由于它是不可变的,因此没有方法可以在不创建新对象的情况下操纵它们.任何可以做到这一点的方法都会破坏类的保证(比如BigDecimal.ZERO为0)