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.
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