Filtrage de map en Java

Haider Ali 12 octobre 2023
Filtrage de map en Java

Nous apprendrons à filtrer les valeurs de map dans le langage de programmation Java. Il existe deux méthodes par lesquelles vous pouvez effectuer cette tâche. Jetons un coup d’œil à eux.

Filtrage de map en Java

Les deux méthodes que nous pouvons utiliser pour filtrer une map sont entrySet() et getKey(). Dans la première méthode, entrySet(), nous filtrons la map à l’aide de valeurs.

Nous utilisons la paire clé-valeur complète dans la deuxième méthode, getKey(). Les méthodes sont quelque peu complexes et impliquent plusieurs conversions.

entrySet()

La méthode entryset() retourne une valeur. Nous pouvons insérer une valeur et vérifier si cette valeur est présente dans une map ou non. Regardez le code suivant.

import java.util.HashMap;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
  public static void main(String[] args) {
    String result = "";
    Map<Integer, String> Country = new HashMap<>();
    Country.put(1, "Canada"); // Inserting Value
    Country.put(2, "UnitedStates"); // Inserting Value
    Country.put(3, "UnitedKingdom"); // Inserting Value
    Country.put(4, "Argentina"); // Inserting Value

    // Map -> Stream -> Filter -> String   //Filter Using Map Value
    result = Country.entrySet()
                 .stream()
                 .filter(map -> "Argentina".equals(map.getValue()))
                 .map(map -> map.getValue())
                 .collect(Collectors.joining());
    System.out.println("Filtered Value Is ::" + result);
  }
}

Production :

Filtered Value Is ::Argentina

La ligne de code qui filtre une valeur est assez longue. Comme mentionné ci-dessus, nous convertissons les valeurs d’une Map en un Stream. Ensuite, nous filtrons ce flux et stockons la valeur filtrée dans une chaîne - la méthode stream convertit l’ensemble en flux. La méthode filter filtrera la valeur de la map.

getKey()

La méthode getKey() renvoie la paire clé-valeur complète. Au lieu de faire correspondre une valeur, nous retirons la valeur à l’aide de sa clé. La paire clé-valeur filtrée complète est stockée dans une autre map puis imprimée ultérieurement. Regardez le code suivant.

import java.util.HashMap;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
  public static void main(String[] args) {
    String result = "";
    Map<Integer, String> Country = new HashMap<>();
    Country.put(1, "Canada"); // Inseting Value
    Country.put(2, "UnitedStates"); // Inserting Value
    Country.put(3, "UnitedKingdom"); // Inserting Value
    Country.put(4, "Argentina"); // Inserting Value

    // Filter Using Map Value
    Map<Integer, String> pair =
        Country.entrySet()
            .stream()
            .filter(map -> map.getKey().intValue() == 1)
            .collect(Collectors.toMap(map -> map.getKey(), map -> map.getValue()));
    System.out.println("Pair Is : " + pair);
  }
}

Production :

Pair Is : {1=Canada}

Pour avoir une compréhension concrète des concepts, vous devriez visiter les liens suivants.

Apprenez-en plus sur les stream ici et apprenez-en plus sur les map ici.

Auteur: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn

Article connexe - Java Map