我有很多功能,採取一個全局ArrayList作爲參數,其中一些不作任何改變這個列表,其他人需要刪除這個數組的一些元素,同時工作,所以我在這些函數中創建一個本地tempArrays。分配一個ArrayList值到另一個
static ArrayList array1 = new ArrayList();
public fn1(ArrayList array1)
{
ArrayList tempArray1 = new ArrayList();
tempArray1 = array1;
tempArray1.remove(elemnt);
}
問題是刪除的元素從原來的ArrayList array1
也刪除了,我不知道爲什麼? 。
謝謝..
這是因爲數組列表是引用類型,而您的新數組列表引用了外部列表。對新內容的任何更改都會反映到外部內容上。 – 2013-04-27 19:38:46