У меня есть несколько слов в List<String>
, и я хочу выполнить итерацию внутри ArrayList<String>
, ища совпадения и помещая каждое из них (с их вхождениями) в Map<String, Integer>
. Я пишу этот метод:
public Map<String, Integer> findTheWords(ArrayList<String> textInFiles, List<String> words) {
for (int i = 0; i < textInFiles.size(); i++) {
Map<String, Integer> mapResult = new HashMap<>();
for (int j = 0; j < words.size(); j++) {
int count = 0;
Pattern regexp = Pattern.compile("\\b" + words.get(j) + "\\b");
Matcher matcher = regexp.matcher(textInFiles.get(i));
if(matcher.find()) {
while (matcher.find()) {
count++;
}
mapResult.put(textInFiles.get(i), count);
}
}
}
return mapResult;
}
Проблема с переменной count
и вставкой правильного значения в карту