Ho alcune strutture dati e vorrei usarne una come temporanea e un'altra come non temporanea.
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();
ora il problema con questo, ovviamente, è che in myObjectrealtà sta solo indicando myTempObject, e quindi una volta myTempObjectè stato chiarito, così è myObject.
Come faccio a mantenere i valori da myTempObjectin myObjectutilizzando Java?
List.addAll. Ma se è necessario conservare tutti gli oggetti, cancellare l'elenco temporaneo non cancellerà davvero molta memoria. Perché stai solo cercando di cancellare i riferimenti, per quanto riguarda gli oggetti che stai cercando di mantenerli.