Использование hashMaps со строковым / целочисленным отношением
У меня проблема с некоторым текущим кодом. Я закончил первую половину, но теперь я использую 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