Bonjour à tous,
Je désire conserver le contenue d'origine d'une HashMap, aussi j'en fait une copie au début du programme, mais les modifications s'appliquent par défaut aux deux Map.
Comment éviter celà ?
Bonjour à tous,
Je désire conserver le contenue d'origine d'une HashMap, aussi j'en fait une copie au début du programme, mais les modifications s'appliquent par défaut aux deux Map.
Comment éviter celà ?
Il faut réellement la copier, et non créer un nouveau pointeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Map<String,String> chaines = new HashMap<String,String>(); // Remplir chaines Map<String,String> sauvegarde = new HashMap<String,String>(chaines); // Faire modifications sur chaines et sauvegarde ne sera pas touchée.
En fait il faut se servir de la méthode clone de l'interface Cloneable pour créer un double d'un objet dans l'espace mémoire. Sinon, les deux objets pointent vers le même espace alloué.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager