验证后,程序成功运行并将用户输入存储到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);
}
最佳答案
您必须初始化
对象数组才能访问它
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);
}
关于java - 使用用户定义数组时出现空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26852746/