Jestem pewien, że istnieje dobry powód, ale czy ktoś mógłby wyjaśnić, dlaczego java.util.Set
brakuje interfejsu get(int Index)
lub jakąkolwiek podobną get()
metodę?
Wygląda na to, że zestawy świetnie nadają się do wkładania rzeczy, ale nie mogę znaleźć eleganckiego sposobu na odzyskanie z nich pojedynczego przedmiotu.
Jeśli wiem, że chcę pierwszy element, mogę go użyć set.iterator().next()
, ale w przeciwnym razie wydaje się, że muszę rzucić na tablicę, aby pobrać element o określonym indeksie?
Jakie są odpowiednie sposoby pobierania danych z zestawu? (inne niż użycie iteratora)
Jestem pewien, że fakt wykluczenia go z interfejsu API oznacza, że istnieje dobry powód, aby tego nie robić - czy ktoś mógłby mnie oświecić?
EDYCJA: Niektóre bardzo świetne odpowiedzi tutaj, a kilka mówi „więcej kontekstu”. Konkretnym scenariuszem był test dbUnit, w którym mogłem racjonalnie stwierdzić, że zwrócony zestaw z zapytania zawierał tylko 1 element i próbowałem uzyskać dostęp do tego elementu.
Jednak pytanie jest ważniejsze bez scenariusza, ponieważ pozostaje bardziej skoncentrowane:
Jaka jest różnica między zestawem a listą .
Dziękujemy wszystkim za fantastyczne odpowiedzi poniżej.