Ниже приводится программа java, которая использует карту для вычисления количества вхождений букв в строке:
String str = "babbaceeeeee";
Map<String,Integer> letterCountMap = new HashMap<>();
for(int count =0; count<str.length(); count++){
String letter = str.substring(count, count +1);
if(letterCountMap.containsKey(letter)){
int presentCount = letterCountMap.get(letter);
letterCountMap.put(letter, presentCount + 1);
}else{
letterCountMap.put(letter, 1);
}
}
System.out.println("letterCountMap ::"+letterCountMap);//prints letterCountMap ::{a=2, b=3, c=1, e=6}
Есть ли способ эффективно заменить этот код комбинацией методов, представленных в Java8 для карты, например compute (), computeIfPresent (), computeIfAbsent () et c без использования containsKey () if condition ??