いくつかのデータ構造があり、1つを一時的なものとして使用し、もう1つを一時的ではないものとして使用したいと思います。
ArrayList<Object> myObject = new ArrayList<Object>();
ArrayList<Object> myTempObject = new ArrayList<Object>();
//fill myTempObject here
....
//make myObject contain the same values as myTempObject
myObject = myTempObject;
//free up memory by clearing myTempObject
myTempObject.clear();
もちろん、これに関する問題は、myObject
実際にはを指しているだけなmyTempObject
ので、一度myTempObject
クリアされると、もクリアされmyObject
ます。
JavamyTempObject
をmyObject
使用して値を保持するにはどうすればよいですか?
List.addAll
。ただし、すべてのオブジェクトを保持する必要がある場合、一時リストをクリアしても、実際には大量のメモリがクリアされるわけではありません。参照をクリアしようとしているだけなので、オブジェクトを保持しようとしている限りです。