ArrayList<ArrayList<Integer>> res = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> tmp = new ArrayList<Integer>();
tmp.add(1);
tmp.add(2);
tmp.add(3);
res.add(tmp);
一個對象,然後我需要修改TMP:取消引用的Java
tmp.remove(tmp.size() - 1);
如何修改一無所有的TMP在res變化?因爲如果我以這種方式修改tmp,res中的內容也會被修改。我認爲這與Java中的解除引用有關,也許是一個非常常見和重要的問題,那麼有人可以幫助我嗎?
那麼,這種拷貝是深拷貝還是淺拷貝? – Spark8006
這是一個淺拷貝。 – rgettman
謝謝,所以這裏的想法是,而不是把一個參考Arraylist,只是創建一個副本,並把它放在那裏,對嗎? – Spark8006