Jorge Lavin:
Para um HashMap<String, LongAdder> named counts
, como eu pode incrementar seu valor independentemente da chave estar presente ou não?
Eu tentei isso
counts.compute(id, (k, v) -> v == null ? new LongAdder() : v.increment());
No entanto v.increment()
é um void
método, portanto, que lambda não concorda com o BiFunction<? super String, ? super LongAdder, ? extends LongAdder>
contrato.
Andy Turner:
Coloque o increment
lado de fora a compute
:
counts.computeIfAbsent(id, k -> new LongAdder()).increment();