我有一些当前代码的问题。我完成了前半部分,但现在我正在使用 hashMap 来搜索这个导入的文本文档,并找到最常用的单词和它出现的次数。我写了很多语法,我的教授说这有点多余,所以我把它删减了一些。我遇到的问题是我们必须使用的 entrySet。我已经做到了这一点,但我在实施它时遇到了问题。任何帮助都会很棒,我只是不熟悉 entrySet 概念,但我已经阅读了文档。
谢谢,代码如下:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
public class HashMapPractice {
public static void main(String[] args) throws FileNotFoundException{
Scanner file = new Scanner(new File("crime_and_punishment.txt"));
Map<String, Integer> crimeMap= new HashMap<String, Integer>();
while (file.hasNext()){
String word = file.next();
if(crimeMap.containsKey(word)){
int placeholder = crimeMap.get(word) + 1;
crimeMap.put(word, placeholder);
}else{
crimeMap.put(word, 1);
}
}//ends while loop
Set<Map.Entry<String,Integer>> entrySet = crimeMap.entrySet();
for(Map.Entry<String, Integer> ent : entrySet){
String key = ent.getKey();
Integer value = ent.getValue();
System.out.printf("Word: [" + ent.getKey()+"], Times: [" +
ent.getValue()+"]");
}
}//ends main
}//ends class