public class TestArray { private int id; private String name; public void setId(int id){ this.id=id; } public int getId(){ return id; } public void setName(String name){ this.name=name; } public String getName(){ return name; }
public static void main(String[] args) { TestArray[] ta = new TestArray[5];
for (int i=0;i<5;i++){ ta[i].setId(i+5); ta[i].setName("anne"+i); int id=ta[i].getId(); String name=ta[i].getName(); System.out.println("id:"+id+",name:"+name); }
/* TestArray ta = new TestArray();
for (int i=0;i<5;i++){ ta.setId(i+5); ta.setName("anne"+i); int id=ta.getId(); String name=ta.getName(); System.out.println("id:"+id+",name:"+name); }*/
}
}
------解决方案-------------------- 初学者常见问题,没有初始化数组元素。
请在 for 循环开始位置,增加: ta[i] = new TestArray();
------解决方案-------------------- 如一楼。 TestArray[] ta中每一个对象都是TestArray类型。所以你要将已经实例化好的TestArray对象赋值给ta[i]才可以。初学java时经常会出现你这样的情况,忘记实例化对象就会出现空指针异常 ------解决方案-------------------- ta[i]= new TestArray(); ta[i].setId(i+5); ta[i].setName("anne"+i);
------解决方案--------------------