Méthode compute() de Java HashMap
La méthode compute() recalcule la valeur pour la clé spécifiée dans le hashMap.
La syntaxe de la méthode compute() est :
hashmap.compute(K key, BiFunction remappingFunction)
Remarque :hashmap est un objet de la classe HashMap.
Détails des paramètres :
- key - la clé
- remappingFunction - la fonction de remappage, utilisée pour recalculer la valeur
Valeur de retour
Si la valeur correspondant à la clé n'existe pas, elle renvoie null ; si elle existe, elle renvoie la valeur recalculée à l'aide de remappingFunction.
Exemple
L'exemple suivant montre l'utilisation de la méthode compute() :
Exemple
class Main {
public static void main(String[] args) {
// Créer un HashMap
HashMap<String, Integer> prices = new HashMap<>();
// Ajouter des entrées de mappage au HashMap
prices.put("Shoes", 200);
prices.put("Bag", 300);
prices.put("Pant", 150);
System.out.println("HashMap: " + prices);
// Recalculer la valeur des chaussures après une réduction de 10 %
int newPrice = prices.compute("Chaussures", (key, value) -> value - value * 10/100);
System.out.println("Prix réduit des chaussures : " + newPrice);
// Afficher le HashMap mis à jour
System.out.println("HashMap mis à jour : " + prices);
}
}
L'exécution du programme ci-dessus produit la sortie :
HashMap: {Pant=150, Bag=300, Shoes=200}
Discounted Price of Shoes: 180
Updated HashMap: {Pant=150, Bag=300, Shoes=180
Dans l'exemple ci-dessus, nous avons créé un HashMap nommé prices.
Remarquez l'expression :
prices.compute("Shoes", (key, value) -> value - value * 10/100)
Dans le code, nous avons utilisé une fonction anonyme - une expression lambda(key, value) -> value - value * 10/100comme fonction de remappage.
Pour en savoir plus sur les expressions lambda, consultezExpressions lambda Java。
Autres extensions
Java HashMap