对于HashMap<String, LongAdder> named counts
,无论键是否存在,如何增加其值?
我已经尝试过了
counts.compute(id, (k, v) -> v == null ? new LongAdder() : v.increment());
但是v.increment()
是一种void
方法,因此lambda与BiFunction<? super String, ? super LongAdder, ? extends LongAdder>
合同不同。
答案 0 :(得分:4)
将increment
放在compute
之外:
counts.computeIfAbsent(id, k -> new LongAdder()).increment();