Maison > Java > javaDidacticiel > le corps du texte

Comment stocker et récupérer plusieurs valeurs associées à la même clé dans un HashMap ?

DDD
Libérer: 2024-10-25 10:04:02
original
974 Les gens l'ont consulté

How can you store and retrieve multiple values associated with the same key in a HashMap?

HashMap : Gérer plusieurs valeurs pour une seule clé

Question :

Est-ce possible stocker et récupérer plusieurs valeurs associées à la même clé dans un HashMap ? Si oui, comment puis-je accéder à la troisième valeur de la première clé ?

Réponse :

Bien qu'un HashMap standard ne puisse pas stocker les clés en double, il est possible d'implémenter un Structure de type HashMap qui autorise plusieurs valeurs pour une seule clé à l'aide d'une carte de liste. Voici une solution Java simple :

<code class="java">import java.util.HashMap;
import java.util.ArrayList;

public class MultiValueMapDemo {

    public static void main(String[] args) {
        // Create a Map of List to store key-value pairs
        Map<Object, ArrayList<Object>> multiMap = new HashMap<>();

        // Add key-value pairs
        multiMap.computeIfAbsent("keyA", k -> new ArrayList<>()).add("value1");
        multiMap.computeIfAbsent("keyA", k -> new ArrayList<>()).add("value2");
        multiMap.computeIfAbsent("keyA", k -> new ArrayList<>()).add("value3");

        // Get the third value for the first key
        Object thirdValue = multiMap.get("keyA").get(2);

        System.out.println("Third value for keyA: " + thirdValue);
    }
}</code>
Copier après la connexion

Cette approche crée un HashMap où les valeurs associées à une clé sont stockées dans une liste. Pour accéder à une valeur spécifique, vous pouvez utiliser la méthode get() sur l'objet List récupéré du HashMap. Dans cet exemple, la troisième valeur de la clé "keyA" est accessible à l'aide de multiMap.get("keyA").get(2).

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!

source:php.cn
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!