我使用 Collections.frequency 来计算链接列表中某个单词的出现次数,但是因为它位于 for 循环中,所以它会根据找到该单词的次数重新打印该单词的出现次数。
例如,如果我将“test”添加到列表中两次,并打印它会打印的出现
test:2
test:2
我需要将它移到 for 循环之外吗?
String word = textField.getText().toLowerCase();
for(String y : wordList) {
if(y.contains(word)) {
System.out.println(y + " Occured: " + Collections.frequency(wordList,y) + " times");
}
}
但我想保留使用不带集合的 LinkedList
最佳答案
您不需要使用循环。只需使用 Collections.Frequency 使用对象(单词)就足够了:
List<String> wordList = new LinkedList<>();
wordList.add("test");
wordList.add("hello");
wordList.add("test");
wordList.add("world");
wordList.add("test");
wordList.add("hello");
wordList.add("test");
wordList.add("hello");
String word = "test";
System.out.println(word + " Occured: " + Collections.frequency(wordList,word) + " times");
输出:
test Occured: 4 times
关于Java Occurrence in Linked List 一遍又一遍地打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47021816/