我的问题是当我运行main方法时,没有任何打印。
我对HashSet
很新,我担心它因为一些非常愚蠢的东西而无效。
dic
最初是ArrayList
,我只是想将其转换为HashSet
以提高效率。
private Set<String>dic = new HashSet<String>(100000);
public void dictionary(){//reads/intializes arraylist dic from a file
File data = new File("dictionaryForJava.txt");
Scanner scanner=null;
try {
scanner = new Scanner(data);
while (scanner.hasNextLine()) {
dic.add(scanner.nextLine());
}
} catch (FileNotFoundException fnfe) {}
if(scanner!=null)scanner.close(); // need if if file missing
}
public void print () throws IOException{
Iterator it = dic.iterator();
while(it.hasNext())
{
String value =(String)it.next();
System.out.println(value);
}
}
public static void main (String[] args)throws IOException{
words test = new words();
test.dictionary();
test.print();
}
答案 0 :(得分:3)
很可能找不到文件dictionaryForJava.txt
。如果没有至少打印一些调试信息,你不能吃异常,试试这个:
catch (FileNotFoundException fnfe) {fnfe.printStackTrace();}
如果在阅读文件时遇到问题,上面将在控制台中显示。