java - 使用用户定义数组时出现空指针异常

标签 java arrays nullpointerexception

验证后,程序成功运行并将用户输入存储到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/

相关文章:

java - 使用 Apache POI 库读取 Excel (xlsx) 文件会引发 NullPointerException

java - 无法在 JAVA EE 中正确读取 ArrayList

php - 计算数组中的重复值

java - for循环中的同步方法

c++ - 理解 C++ 算法二进制搜索背后的工作原理的问题

python - 在python中查找数组的转折点

java - 从 ServletContext 获取真实路径时出现 NullPointerException

java - 为什么我的图标处理代码抛出 NullPointerException?

java 1.4 高质量图像调整大小

java - 重绘导致组件溢出