自从我一直使用Java进行编码以来已经有一段时间了,现在我正在帮助一个刚开始上学的朋友。在帮助他的同时,我对ArrayList
方法进行了编码,以从文件中添加单词并将其存储在ArrayList
中。现在,我已经完成了该方法,我试图尝试一种递归方式来编写相同的方法。当前方法如下:
public Lexicon(String filename) throws IOException{
wordlist = new ArrayList<>();
Scanner scanWord = new Scanner(new File(filename));
while (scanWord.hasNextLine()){
wordlist.add(scanWord.nextLine());
wordCount++;
}
scanWord.close();
}
最佳答案
不知道为什么要执行这样的操作,但是我假设您只是创建了一个可以自我调用的方法,直到不再剩下任何行。
public Lexicon(String filename) throws IOException{
....
public void addWord(Scanner scanWord, List<> wordLst) {
if (scanWord.hasNextLine()) {
wordLst.add(scanWord.nextLine());
addWord(scanWord, wordLst);
} else {
// base case - no more words
}
}
...
}