我一直在使用哈希图来存储文本文件中的唯一单词。现在,我需要将 hashmap 中的每个单词与另一个更大的文本文件进行比较,并跟踪每个单词在文本文件中出现的频率。
在最初添加到 hashmap 时,我只插入键并将值设置为 0。我的计划是使用“值”作为较大文本文件中每个单词的频率。
我的尝试如下;我首先使用扫描仪读取原始文件并将单词存储到哈希图中。接下来,我再次使用扫描仪,但这次与更大的文本文件相关联。从这里开始,我有点卡住了。我不知道如何更新“值”并索引“键”。
这就是我所拥有的;
Scanner fileScanner = new Scanner (new File (fileName));
fileScanner.useDelimiter (" ");
while (fileScanner.hasNext()) {
for (int i = 0; i < hashmap.size(); i++) { //This I use to index the key field
if (hashmap.get(i).equals(fileScanner.next().toString()) {
int freq ++;
//How do I update the value field of the corresponding value?
}
}
}
现在,显然,上述代码中的任何内容都不起作用,而且我在想办法时遇到了一些问题。有人可以帮我吗?