验证后,程序成功运行并将用户输入存储到last_name变量中。 但是当我试图将last_name放在student数组中时,它会给我一个空指针异常。如果省略for循环中的第三行,程序运行正常。 在这里," setStudentLastName"是Student类中的一个void方法,它接受一个字符串参数
//Create a array using the data from user
Student student[] = new Student[numOfStudents];
for(int i=0;i<student.length;i++)
{
int j = i+1;
last_name = Validator.validUpperCase(sc,"Enter student "+j+" last Name: ");
student[i].setStudentLastName(last_name);
}
答案 0 :(得分:3)
您必须initialize
对象数组才能访问它
for(int i=0;i<length;i++)
{
student[i]=new student();
}
在您的代码中添加
for(int i=0;i<student.length;i++)
{
int j = i+1;
last_name = Validator.validUpperCase(sc,"Enter student "+j+" last Name: ");
student[i]=new student();
student[i].setStudentLastName(last_name);
}