我正在處理應插入到ArrayList中的二維數組值。但是這是在for循環中完成的,並且二維數組值的值隨着循環運行而變化,因爲它僅用作臨時變量(這使得存儲在ArrayList中的所有變量被更改爲這個變量改變了)。 因此,如果我在循環完成時嘗試打印出ArrayList的內容,所有的值都是相同的。製作一個變量的副本並添加到Arraylist
for(int i = 0; i <= Counter; i++)
{
if(Xhavetomove >= i)
arrayvalue[0][0] = this.Xspeed;
else
arrayvalue[0][0] = 0;
if(Yhavetomove >= i)
arrayvalue[0][1] = this.Xspeed;
else
arrayvalue[0][1] = 1;
System.out.println(arrayvalue[0][1]);
Object.movement.add(arrayvalue);
}
有沒有反正我可以讓它存儲的價值本身?
例如:第一次循環運行的值是「5,5」,但是如果在循環完成時打印出ArrayList,則所有值都變爲「5,1」。
你只更新單個陣列值做什麼定義。沒有ArrayList,我可以看到,除非你的意思是你調用「添加」的東西。但是你總是添加相同的值,並修改相同的值。 – 2012-03-30 11:51:31
我認爲你[ArrayList](http://docs.oracle.com/javase/1.5.0/docs/api/java/util/ArrayList.html)和[Array](http:// www。 go4expert.com/forums/showthread.php?t=1162)。 – Rajkiran 2012-03-30 11:54:55