placer une valeur dans la carte en java *sans* la mise à jour de la valeur si elle existe

J'aimerais faire de la fonctionnalité suivante:

if (!map.contains(key)) {
  map.put(key, val);
}

Mise à jour: imaginons qu'il n'est pas HashMap si le plan est mis en œuvre comme un arbre d'une certaine sorte.

Cependant noter que c'est un peu inefficace, car si nous entrons dans l', si nous réellement de la recherche de la carte deux fois. J'aimerais vraiment faire quelque chose comme ça:

map.put_if_new_key(key, val);

Aucune idée de comment le faire en Java?

OriginalL'auteur Drakosha | 2011-12-09