1 回答

TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊
您收到NoSuchElementException是因?yàn)樵趯?duì)象上調(diào)用nextInt()和nextDouble()方法Scanner不會(huì)讀取換行符(點(diǎn)擊返回時(shí)創(chuàng)建的字符) - 請(qǐng)參閱此答案。
要解決此問題,您可以執(zhí)行以下操作:
public void readFile() throws IOException {
try (Scanner s = new Scanner(new FileReader(new ClassPathResource("Students.txt").getFile()))) {
while (s.hasNextLine()) {
String name = s.nextLine();
int age = Integer.parseInt(s.nextLine());
double gpa = Double.parseDouble(s.nextLine());
Student studentOne = new Student(name, age, gpa);
students.add(studentOne);
}
}
}
注意 - 上面的代碼假定該Students.txt文件在您的類路徑中。
添加回答
舉報(bào)