Освой Java играючи
/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000
Интерфейс Collection является самым главным для классов коллекций в библиотеке Java. Два основных метода интерфейса. Другие методы рассмотрим позже в конкретных реализациях коллекций.
Метод add() добавляет элемент в коллекцию и возвращает логическое значение true, если добавление изменило коллекцию.
Метод iterator() возвращает объект класса, реализующего интерфейс Iterator.
Метод toString() выводит содержимое коллекции в квадратных скобках, с разделением элементов запятыми.
Коллекции в свою очередь делится на другие большие подгруппы.
К нему относится список (интерфейс List), где в определённой последовательности хранится группа элементов. К существующим методам коллекции у списка добавлены новые методы set(), get(), indexOf. Главная отличительная особенность - вы всегда можете пронумеровать элементы списка. Представьте себе подписанные коробки, в которых сидят коты, вы всегда можете обратиться к нужному коту по номеру коробки. При этом допускаются коты-однофамильцы, то есть одинаковые элементы.
Классы, работающие с интерфейсом List:
Контейнеры ArrayList и LinkedList принадлежат к семейству List и элементы в них хранятся в порядке вставки. Они различаются не только скоростью выполнения тех или иных операций, но и тем, что LinkedList содержит больше операций, чем ArrayList.
Множество Set, в которое можно добавлять только по одному элементу определённого типа. Но при этом, вы не можете их получить по индексу. Воспринимайте множество как большую общую комнату, в которой свободно гуляют коты. Вы можете их пересчитать, вы можете проверить, что в комнате есть и Мурзик, и Васька, но в каком именно месте они сейчас спят? Может стоит прикупить коробки? В отличие от списка, коты с одинаковыми именами в такой комнате жить не могут. Это главное свойство множества - все элементы уникальны.
Очередь Queue.
Интерфейс Map не входит в семейство коллекций, но обычно изучается вместе с ним.