我正在为HTML文件编写一个单词索引器的实现。我遇到了构造函数的问题。
在构造函数中,我扫描HTML文件中的每个单词并将其添加到TreeMap中,其中链表是索引的集合,其中键,单词出现在文件中。在测试期间,链表永远不会超过一个。我想知道是否有人可以查看我的代码,并指出我正确的方向,以便将事情搞得一团糟。
while(scanner.hasNext()) {
String temp = scanner.next().toLowerCase();
if(this.wordMap.containsKey(temp)) {
LinkedList<Integer> tempList = this.wordMap.get(temp);
tempList.add(currentIndex);
wordMap.put(temp, tempList);
wordCount++;
currentIndex++;
}
else {
LinkedList<Integer> tempList = new LinkedList<Integer>();
tempList.add(currentIndex);
wordMap.put(temp, tempList);
wordCount++;
currentIndex++;
}
}
答案 0 :(得分:0)
这不是答案,不要在代码中重复自己(DRY):
while(scanner.hasNext()) {
String temp = scanner.next().toLowerCase();
LinkedList<Integer> tempList;
if(this.wordMap.containsKey(temp)) {
tempList = this.wordMap.get(temp);
} else {
tempList = new LinkedList<Integer>();
}
tempList.add(currentIndex);
wordMap.put(temp, tempList);
wordCount++;
currentIndex++;
}
我在代码中找不到bug。我建议在Scanner中检查分隔符。