我試圖讓程序讀取四個.txt文件並計算這些文件中的單詞。使用HashMap(String,ArrayList <String>)
private HashMap<String, ArrayList<String>> mapWords = new HashMap<String, ArrayList<String>>();
public void countWordsInFiles() {
buildWordFileMap();
}
private void buildWordFileMap() {
mapWords.clear();
String[] files = {"brief1.txt","brief2.txt","brief3.txt","brief4.txt"};
for(int i=0; i<files.length; i++){
FileResource resource = new FileResource("data/" + files[i]);
addWordsFromFile(resource);
}
}
private void addWordsFromFile(FileResource resource) {
for(String word : resource.words()){
word = word.toLowerCase();
if (mapWords.keySet().contains(word)){
mapWords.put(word, //Not sure how to use arraylist here);
}
else {
mapWords.put(word, //Not sure how to use arraylist here);
}
}
}
問題是我不知道如何使方法「addWordsFromFile」中的「如果」。 基本上,我想我的輸出是這樣的:
文件的最大數目字出現在爲3,有兩個這樣的話:「貓」與「和」。
「貓」出現在文件:brief1.txt,brief3.txt,brief4.txt
「和」出現在文件:brief1.txt,brief3.txt,brief4.txt
這個功課? –
不,我希望我能在學校時學習java:( – Ravers
)您可以使用'mapWords.containsKey'而不是'mapWords.keySet()。contains' –