我正在尝试从列出的文件中打印一行,其中包含一个指定的单词。但该程序什么也不做。有人可以帮我解决代码吗?谢谢
import java.io.File;
import java.util.ArrayList;
import java.util.Scanner;
public class SearchingArrayLists {
public static void main(String[] args) throws Exception {
ArrayList names = new ArrayList();
Scanner scan = new Scanner(new File("random.txt"));
while (scan.hasNext()){
names.add(scan.next());
}
if (names.contains("legal")){
System.out.println(scan.next());
}
scan.close();
}
}
更新:
抱歉,删除了循环。该文件包含随机文本,其中包含“合法”一词。该文件已被扫描仪预先读取。
最佳答案
System.out.println(scan.next());
将抛出异常,因为您在消耗完 while (scan.hasNext( ))
循环。
但如果您的 names
列表不包含与字符串“legal”完全匹配的内容,它甚至可能无法达到该异常。
关于java - 程序终止而不打印任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27380199/