【发布时间】:2016-03-31 03:18:36
【问题描述】:
我正在尝试为我的数组分配一个双精度变量“gradesInSection”。它不允许我这样做并引发点异常。
void findGrades() {//开始findGrades
Scanner grades = new Scanner(System.in);
System.out.println("\nHow many grades do you have?");
numOfGrades = grades.nextInt();
while (numOfGrades > 0)
{
numOfGrades = numOfGrades - 1;
elementForGrade = elementForGrade + 1;
System.out.println("\nGrade " + elementForGrade + ":");
Scanner whatGrade = new Scanner(System.in);
gradesInSection = whatGrade.nextDouble();
gradeArray[elementForGrade] = gradesInSection;
}
for (int i = 0; gradeArray.length > i; i++)
{
finalGradeOfSection = gradeArray[i] + finalGradeOfSection;
}
finalGradeOfSection = finalGradeOfSection/numOfGrades;
System.out.println(finalGradeOfSection);
}//End find Grades
【问题讨论】:
-
哪一行抛出异常?
-
错觉是什么?
-
gradeArray[elementForGrade] = gradesInSection;
-
gradeArray 分配在哪里?我猜它还不够大。可能是我们的绑定异常,或空指针异常
-
它在另一个类中。是的,一个 null pinter 异常
标签: java arrays while-loop elements