Я думаю, вы запутались, держась за два списка.
Удалить список результатов в основном методе. Также удалите totalScore
из класса Student; это то, что называется «вычисляемым полем»
Обновить метод
public double getTotalScore() {
double totalScore = 0;
for(int score : scores){
totalScore += score;
}
return totalScore;
}
Тогда вам действительно потребуется такой цикл, чтобы более точно обрабатывать порядок проверки ввода
String grade;
do {
grade = inp.nextLine();
if (grade.equals("q")) break;
// Convert the grade to an integer and pass it
student.addQuiz(Integer.parseInt(grade));
} while (true);
Затем удалите numOfQuizzes
из класса Student.
В обычном методе это то место, где вы используете
return getTotalScore()/scores.size();
В настоящее время вы получаете бесконечность дважды, потому что
- Основные оценки метода никогда не добавляются к
- Вы никогда не увеличиваете
this.numOfQuizzes
в классе ученика