У меня возникают проблемы с этой проблемой: я должен написать метод contains3, который принимает список строк в качестве параметра и возвращает true, если какая-либо одна строка встречается не менее 3 раз в списке, и false в противном случае. Мне нужно использовать карту.Обнаружение нескольких значений в списке
Когда есть три экземпляра слова, оно по-прежнему не возвращает true; У меня возникли проблемы с поиском места, где все пошло не так.
Вот что у меня есть:
private static boolean contains3(List<String> thing) {
Map<String, Integer> wordCount = new TreeMap<String, Integer>();
for (String s: thing) {
String word = s;
if (wordCount.containsKey(word)) { // seen before.
int count = wordCount.get(word);
wordCount.put(word, count + 1);
} else {
wordCount.put(word, 1); // never seen before.
}
if (wordCount.containsValue(3)) {
return true;
} else {
return false;
}
}
return false;
}
В чем проблема? – Prateek
Когда есть три экземпляра слова, он все равно не возвращает true; У меня возникли проблемы с поиском места, где все пошло не так. –
@JackL. Не можете ли вы использовать собственный метод из коллекций? –