我想从对象中设置一些数据到数组中,这里是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/