java - 从对象初始化数组会产生 NullPointerException

标签 java arrays object exception nullpointerexception

我想从对象中设置一些数据到数组中,这里是A类,它会导致NullPointerException。为什么?怎么解决这个问题?我的初始化有什么问题?

class A {

    int a;

    public void setA(int a) {
        this.a = a;
    }

public class ObjArry {
public static void main(String[] args) {

    A[] ObjectArray = new A[5];

    ObjectArray[0].setA(10); //Exception occurs in this line
    ObjectArray[1].setA(9);
    ObjectArray[2].setA(8);
    ObjectArray[3].setA(7);
    ObjectArray[4].setA(6);
}

最佳答案

所有其他行也会发生异常。 默认情况下,新初始化的数组new A[5]是空的,即它的所有字段都是null。 您首先必须执行以下操作:

ObjectArray[0] = new A();
ObjectArray[1] = new A();
ObjectArray[2] = new A();
ObjectArray[3] = new A();
ObjectArray[4] = new A();

关于java - 从对象初始化数组会产生 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55078000/

相关文章:

java - 在Java Android应用程序中获取ruby环境变量DATABASE_URL

javascript - 使用不同的键合并 2 个 JSON 数组

arrays - 在 bash 中循环遍历数组

javascript - 如何在对象数组中找到具有最高值的对象?

javascript - 如何合并包含对象的数组?

java - 生成一些数字范围内所有排列的序列

java - 将图像添加到 eclipse web 项目

flash - AS3 : Impossible to copy DisplayObjects with content?

java - Joda-Time 解析时格式无效

c - 尝试在 C 中分配结构数组的段错误