88 votes

HashMap null key

HashMap autorise une clé NULL et un nombre quelconque de valeurs NULL. à quoi sert-il?

124voto

Michael Mrozek Points 44120

Je ne suis pas certain de ce que vous demandez, mais si vous cherchez un exemple d'utilisation d'une clé nulle, je les utilise souvent dans des mappes pour représenter le cas par défaut (c'est-à-dire la valeur à utiliser). si une clé donnée n'est pas présente):

 Map<A, B> foo;
A search;
B val = foo.containsKey(search) ? foo.get(search) : foo.get(null);
 

HashMap gère les clés nulles spécialement (puisqu'il ne peut pas appeler .hashCode() sur un objet nul), mais les valeurs nulles n'ont rien de spécial, elles sont stockées dans la carte comme toute autre chose.

28voto

tony Points 41

Un exemple serait pour les noeuds d'arbre de modélisation.
Si vous utilisez un HashMap pour encapsuler une arborescence.
Où la clé est le parent et la valeur est la liste des enfants.
Ensuite, les enfants de la clé NULL seraient tous les nœuds de niveau supérieur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X