我正在尝试用单词及其出现次数填充地图。我正在尝试编写一个lambda来做到这一点,就像这样:

Consumer<String> wordCount = word -> map.computeIfAbsent(word, (w) -> (new Integer(1) + 1).intValue());


mapMap<String, Integer>。如果不存在该单词,则只需在映射中插入该单词作为关键字,如果存在该单词,则应将其整数值增加1。这在语法上是不正确的。

最佳答案

您不能使用computeIfAbsent增加计数,因为它将仅在第一次时计算。

您可能的意思是:

map.compute(word, (w, i) -> i == null ? 1 : i + 1);

09-10 07:32
查看更多