java初學者在這裏!構造函數返回意外的null
我想要一個對象模型,它是隨機座標列表,並且根據(*),當主模型(200)運行時,ArrayList不是空的。但是,當我運行主我得到一個出界失誤,當我與周圍的打印測試(**)我得到的錯誤:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
與構造模型的問題?
public class Model extends ArrayList<Particle>{
private ArrayList<Particle> particleList;
public Model(int N) {
ArrayList<Particle> list1 = new ArrayList<Particle>();
Particle newParticle = new Particle();
for(int i=0;i<N;++i){
list1.add(newParticle);
newParticle = new Particle();
//String s= String.valueOf(newParticle.x);
//System.out.println(s);
}
this.particleList = list1;
Particle p1 = particleList.get(5);
double d = p1.x;
String s = String.valueOf(d);
System.out.println(s); (*)
}
public static void main(String[] args){
Model x1 = new Model(200);
Particle p1 = x1.get(0); (**)
double d = p1.x;
String s = String.valueOf(d);
System.out.println(s);
}
我相信你不是調用你的''paricleList''變量與''x1.get(0)''但超類的元素(你擴展ArrayList)。如果你想從''particleList''獲得元素,你應該定義一個getter,然後執行如下操作:''x1.getParticleList()。get(0)''。 – Plebejusz
你真的想擴展一個ArrayList嗎? –
你能擴展@BalajiKrishnan嗎?我這樣做是因爲我想使用.get(i),但也許我應該使用Plebejusz提示。爲什麼我不想擴展ArrayList? –