Maison > Java > javaDidacticiel > Comment conserver l'ordre d'insertion dans Java HashMaps ?

Comment conserver l'ordre d'insertion dans Java HashMaps ?

Patricia Arquette
Libérer: 2024-11-03 04:33:03
original
324 Les gens l'ont consulté

How Do I Preserve Insertion Order in Java HashMaps?

Préserver l'ordre d'insertion dans les HashMaps

Lorsque vous travaillez avec des HashMaps, il est courant de rencontrer des situations où l'ordre des éléments lors de l'itération est incompatible avec leur ordre d'insertion. Cependant, dans certains cas d’utilisation, le maintien de l’ordre d’insertion est crucial. Pour répondre à ce besoin, Java Collections Framework fournit le LinkedHashMap.

Solution : LinkedHashMap

La classe LinkedHashMap étend la classe HashMap. Il conserve l'ordre d'insertion en conservant une liste interne à double lien qui relie les éléments dans l'ordre dans lequel ils sont insérés. Lors d'une itération sur un LinkedHashMap, les éléments sont renvoyés dans le même ordre dans lequel ils ont été ajoutés.

Exemple :

<code class="java">Map<Integer, String> map = new LinkedHashMap<>();
map.put(1, "One");
map.put(3, "Three");
map.put(2, "Two");

for (Map.Entry<Integer, String> entry : map.entrySet()) {
    System.out.println(entry.getKey() + ": " + entry.getValue());
}</code>
Copier après la connexion

Sortie :

1: One
3: Three
2: Two
Copier après la connexion

Comme vous pouvez le constater, les éléments sont imprimés dans l'ordre dans lequel ils ont été insérés (1, 3, 2).

Conclusion :

En utilisant LinkedHashMap, vous pouvez conserver l'ordre d'insertion des éléments dans un HashMap. Cette fonctionnalité est particulièrement utile pour les scénarios où l'ordre des éléments est critique pour le bon fonctionnement de votre application.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal