java8 map compute和computeIfAbsent


computeIfAbsent: 如果map里沒有這個key,那么就按照后面的這個function添加對應的key和value
如果要這個key,那么就不添加
babuffer.weightClicks.computeIfAbsent(currEntry.getKey(), k -> {
babuffer.size = babuffer.size + 1;
return new Double[] {0d, 0d};
});

compute:如果map里有這個key,那么function輸入的v就是現在的值,返回的是對應value,如果沒有這個key,那么輸入的v是null
babuffer.weightClicks
.compute(currEntry.getKey(), (k, v) -> new Double[] {v[0] + currEntry.getValue()[0],
v[1] + currEntry.getValue()[1]});


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM