Я пытаюсь создать метод, где он читает двойники из моего текстового файла, который выглядит как:Программы завершается при попытке отсортировать двойники
Homer Simpson, 50.0
Zoidberg, 100
Peter Griffin, 34.0
Lisa Simpson, 100
и отсортировать их в порядке убывания, вот мой код:
public static void sortGrade() throws IOException {
FileReader reader = new FileReader("Grades.txt");
BufferedReader buffer = new BufferedReader(reader);
Scanner input = new Scanner ("Grades.txt");
Double dGrade=0.0;
ArrayList<Double> grade = new ArrayList<Double>();
while (input.hasNextDouble())
{
grade.add(dGrade);
}
reader.close();
Collections.sort(grade, Collections.reverseOrder());
FileWriter fileWriter = new FileWriter("Grades.txt");
PrintWriter out = new PrintWriter(fileWriter);
for (Double outputLine : grade)
{
out.println(outputLine);
}
out.close();
}
}
После вызова метода он удаляет мой .txt-файл и завершает работу программы. Кто-нибудь знает, что я делаю неправильно синтаксически или логически?
Первое, что 'input' reads - это строка, а не double, поэтому первый цикл while завершится без каких-либо действий. –