タグ

ブックマーク / qiita.com/Jun-Katagiri (1)

  • Java でコレクションをディープコピーする - Qiita

    などとするとディープコピーが作れますと、書いてありますが、実はリストに格納しているのがオブジェクトの場合、ディープコピーになりません!! なので、単にコレクションを引数にとって new するだけではだめです。 オブジェクトのコレクションなどをディープコピーするには、 ArrayList<MyObject> myList = new ArrayList<MyObject>(srcList.size()); for (MyObject o : srcList) { // 以下のどちらかを実装 o.add(new MyObject(new o)); // コピーコンストラクタ o.add(o.clone()); // Clonable インターフェース実装 }

    Java でコレクションをディープコピーする - Qiita
    chess-news
    chess-news 2018/12/08
    clone() “ // 以下のどちらかを実装 o.add(new MyObject(new o)); // コピーコンストラクタ o.add(o.clone()); // Clonable インターフェース実装”
  • 1