Bazı veri yapılarım var ve birini geçici, diğerini geçici değil olarak kullanmak istiyorum.
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();
şimdi bununla ilgili sorun elbette bunun myObject
sadece işaret etmesi myTempObject
ve bu yüzden bir kez myTempObject
temizlendiğinde öyle myObject
.
Nasıl değerleri korumak do myTempObject
in myObject
java kullanarak?
List.addAll
. Ancak tüm nesneleri saklamanız gerekiyorsa, geçici listeyi temizlemek gerçekten çok fazla belleği temizlemeyecektir. Çünkü siz, saklamaya çalıştığınız nesnelere kadar sadece referansları temizlemeye çalışıyorsunuz.