Comment mettre à jour une valeur dans une carte, si il existe d'autre de l'insérer

J'ai fait une recherche et a été étonné de voir cela n'avait pas été demandé avant (au moins, je ne pouvais pas le trouver).

J'ai une carte comme ceci:

Map<String, String> myMap

Je sais que je peux vérifier si une clé existe dans la carte à l'aidecontainsKey(Object key); et je peut remplacer une valeur à l'aide replace(String key, String value); et, naturellement, de mettre une valeur à l'aide de put(String key, String value);

Maintenant, si je veux vérifier une valeur si elle existe un jour, le reste de l'insérer, je dois utiliser une condition:

if(myMap.containsKey(key)) {
    myMap.replace(key, value);
} else {
    myMap.put(key, value);
}

Est-il une meilleure manière de faire ceci? Personnellement, je pense que la condition est un peu inutile et de compliquer à l'excès de quelque chose qui pourrait être une ligne plutôt que de les cinq!

OriginalL'auteur Crazy Dino | 2015-08-07