我的Hashset
里面有我的词典。
我尝试做的是单独扫描文件checkMe
中的字词,以查看它们是否存在于我的HashSet
中。
当一个单词不存在时,我需要触发一些动作(我不会进入)。
就目前而言,我想知道如何从扫描的文件中提取文字并根据我的HashSet
进行检查。
类似的东西:
if (dicSet does not contain a word in checkMe) {
da da da
}
此外,我希望能够遍历checkMe
以确保通过dicSet
检查每个单词,直到出现错误。
到目前为止我的代码:
import java.util.*;
import java.io.*;
public class spelling{
public static void main(String args[]) throws FileNotFoundException {
//read the dictionary file
Scanner dicIN = new Scanner(new File("dictionary.txt"));
//read the spell check file
Scanner spellCheckFile = new Scanner(new File("checkMe.txt"));
//create Hashset
Set <String> dicSet = new HashSet<String>();
//Scan from spell check file
Scanner checkMe = new Scanner(spellCheckFile);
//Loop through dictionary and store them into set. set all chars to lower case just in case because java is case sensitive
while(dicIN.hasNext())
{
String dicWord = dicIN.next();
dicSet.add(dicWord.toLowerCase());
}
//make comparisons for words in spell check file with dictionary
if(dicSet){
}
// System.out.println(dicSet);
}
}
答案 0 :(得分:1)
while(checkMe.hasNext())
{
String checkWord = checkMe.next();
if (!dicSet.contains(checkWord.toLowerCase())) {
// found a word that is not in the dictionary
}
}
至少这是基本的想法。对于实际使用,您必须添加大量错误检查和异常状态处理(如果您的输入包含数字,该怎么办?.
,-
等等?