Je suis sûr qu'il y a une bonne raison, mais quelqu'un pourrait-il expliquer pourquoi l' java.util.Set
interface manque get(int Index)
ou toute autre get()
méthode similaire ?
Il semble que les ensembles soient parfaits pour y mettre des choses, mais je ne trouve pas un moyen élégant de récupérer un seul élément de celui-ci.
Si je sais que je veux le premier élément, je peux l'utiliser set.iterator().next()
, mais sinon, il semble que je doive effectuer un cast vers un tableau pour récupérer un élément à un index spécifique?
Quels sont les moyens appropriés pour récupérer des données d'un ensemble? (autre que l'utilisation d'un itérateur)
Je suis sûr que le fait qu'il soit exclu de l'API signifie qu'il y a une bonne raison de ne pas le faire - quelqu'un pourrait-il m'éclairer?
EDIT: Quelques réponses extrêmement excellentes ici, et quelques-unes disant "plus de contexte". Le scénario spécifique était un test dbUnit, où je pouvais raisonnablement affirmer que l'ensemble renvoyé d'une requête n'avait qu'un seul élément, et j'essayais d'accéder à cet élément.
Cependant, la question est plus valable sans le scénario, car elle reste plus ciblée:
Quelle est la différence entre set et list .
Merci à tous pour les réponses fantastiques ci-dessous.