Я впевнений, що є вагомі причини, але чи могла б хто-небудь пояснити, чому java.util.Set
не вистачає інтерфейсу get(int Index)
, чи якийсь подібний get()
метод?
Здається, що набори чудово підходять для того, щоб укласти речі, але я не можу знайти елегантний спосіб вилучення з нього жодного предмета.
Якщо я знаю, що хочу перший елемент, я можу його використовувати set.iterator().next()
, але в іншому випадку здається, що я повинен передати масив для отримання елемента з певним індексом?
Які належні способи отримання даних із набору? (крім використання ітератора)
Я впевнений, що той факт, що це виключено з API, означає, що є вагомі причини цього не робити - може хтось, будь ласка, просвітить мене?
EDIT: Деякі надзвичайно чудові відповіді тут, а декілька говорять про "більше контексту". Конкретним сценарієм був тест dbUnit, де я міг обґрунтовано стверджувати, що повернений набір із запиту містить лише 1 елемент, і я намагався отримати доступ до цього елемента.
Однак питання вірніше без сценарію, оскільки воно залишається більш сфокусованим:
Яка різниця між набором та списком .
Дякую всім за фантастичні відповіді нижче.