J'ai des structures de données et j'aimerais en utiliser une comme temporaire et une autre comme non temporaire.
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();
maintenant, le problème avec cela, bien sûr, c'est que cela myObjectne fait que pointer vers myTempObject, et donc une fois myTempObjectest effacé, il en est de même myObject.
Comment puis-je conserver les valeurs de myTempObjecten myObjectutilisant java?
List.addAll. Mais si vous avez besoin de conserver tous les objets, effacer la liste temporaire n'effacera pas vraiment beaucoup de mémoire. Parce que vous essayez seulement d'effacer les références, dans la mesure où vous essayez de les conserver.