私はarrylist a
に特定のオブジェクトが含まれています。私はまた、これらのオブジェクトのいくつかを含むarraylistsを含むarraylist b
を持っています。今、私はarraylists a
を複製し、arraylist b
の参照をクローンオブジェクトに更新したいと思います。擬似コードの例:古いオブジェクトがb
に存在する場合、各クローンを作成した後同じオブジェクトを参照する複数のarraylistsをクローニングする
for(int i = 0; i < a.length; i++){
o = a.get(i);
aClone.set(i, o);
for(int j = 0; j < b.length){
for(int k = 0; k < b.get(j).length){
if(b.get(j).get(k).value() == o.value())
bClone.get(j).set(k, o);
}
}
}
このコードをチェックし、そしてクローンに置き換え:私が思いついた
a = [object1,object2,object3,object4,object5,object6,object7,object8,object9,object10];
b = [[object3,object8,object5],[object2,object9,object1][object6,object7]];
//now, I can clone arraylist a
aClone = [clone1,clone2,clone3,clone4,clone5,clone6,clone7,clone8,clone9,clone10];
//but how do I get a clone of arraylist b containing references to the clones of the objects like so:
bClone = [[clone3,clone8,clone5],[clone2,clone9,clone1][clone6,clone7]];
何かが次のようです。私はこれが非常に遅いと思うので、どのようにこれをより効率的に行うことができるか知っていますか?
あなたが話している参照の種類はわかりませんが、私が見ているものはすべてプリミティブ整数です。 –
@MuratK。私の実際のコードでは、オブジェクトを使用しています。ここでは、わかりやすくするためにオブジェクトを表現するために数字を使用しています。 – Jonan
ジョナン、何を試したのか、どんな問題に遭遇したのかを示す必要があることを知っています。 – alfasin