-
Tableau associatif ?
Bonjour,
Plutôt que d'utiliser un tableau d'index du style table[0], je souhaiterais faire un tableau associatif, ce qui dans d'autres langages donne table["cle"] mais je n'ai pas trouvé comment faire en java.
Apparemment on utiliserait une hashmap ? Si oui, comment modifier une valeur ? Car pour créer une couple clé/valeur j'utilise la méthode put(key, value), mais ça ne semble pas marcher pour modifier une clé existente.
Merci pour vos éclaircissements !
-
Salut,
Avec la méthode put, si la clef existe déjà dans la map, le couple ne sera pas ajouté.
La modification de clef n'est pas possible. Tu peux supprimer l'ancienne et créer la nouvelle.
En revanche, pour modifier une valeur (objet) il suffit de modifier l'objet, en disposant de sa référence.
-
Merci pour ta réponse.
Finalement je crois que je vais créer des petites classes à la place, ce sera sans doute plus simple et plus adapté ;)
-
Bah la méthode put se charge des deux opérations, c'est à dire ajout et mise à jour.
Ensuite tout dépend de l'objet que tu as utilisé pour la clef (en particulier de comment sont définies les méthodes equals et hashcode de cet objet)
-
Le truc, c'est apparemment qu'il souhaite modifier la clé par la suite.
Cela n'est tout simplement pas possible, sauf en faisant une opération de remove, puis de put, comme l'a dit visiwi.