我正在尝试用单词及其出现次数来填充 map 。我正在尝试编写一个 lambda 来执行此操作,如下所示:
Consumer<String> wordCount = word -> map.computeIfAbsent(word, (w) -> (new Integer(1) + 1).intValue());
map
是 Map<String, Integer>
。如果该单词不存在,它应该将其作为键插入到映射中;如果存在,则应该将其整数值增加 1。这在语法方面是不正确的。
最佳答案
您无法使用 computeIfAbsent
增加计数,因为它只会在第一次计算。
您的意思可能是:
map.compute(word, (w, i) -> i == null ? 1 : i + 1);
关于java - 用于填充 Map 的 Lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49790737/