Java-коллекции и карта в рамках коллекций

Согласно http://docs.oracle.com/javase/tutorial/collections/interfaces/index.html есть два интерфейса верхнего уровня, называемые collection и map.

Какова точная причина разделения этих двоих?

Все ли структуры данных ключ-значение реализуют интерфейс карты, а все остальные реализуют интерфейс коллекций?


person klijo    schedule 13.07.2012    source источник


Ответы (2)


Да, это правильно! Проверьте все классы List, а затем проверьте все классы, связанные с Map.

и есть эта потрясающая дискуссия по этому вопросу

Список и карта в Java

Визуально

Это коллекция, по этому вы знаете, что книги там и в таком порядке, как 0,1,2,3...

введите здесь описание изображения

Но в Карте книги лежат в памяти неупорядоченно, но для удобства компьютера у него есть ключ для поиска книг, как в библиотеке.

введите здесь описание изображения

person TeaCupApp    schedule 13.07.2012

Map — это структура, в которой уникальные ключи сопоставляются со значениями. Collection — это просто группа нескольких значений без определенного ключа.

Вы можете провести такое же сравнение между List и Map, чтобы увидеть различия. Этот вопрос SO касается этих различий.

person Jon Egeland    schedule 13.07.2012