Сегодня разберёмся с одним из самых популярных вопросов у джавистов: чем отличается
Collection от List и когда что применять.🔹 Collection — это базовый интерфейс всех коллекций в Java. Он описывает общие операции:
add(), remove(), size(), contains() и т.д.🔹 List — это подинтерфейс
Collection, предназначенный для работы с упорядоченными списками. Дополнительно даёт методы:
get(index), set(index, value), indexOf(), add(index, value).🔧 Пример с Collection:
Collection<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
for (String name : names) {
System.out.println(name);
}
Здесь важно только наличие элементов — порядок и индексы не важны.
🔧 Пример с List:
List<String> cities = new ArrayList<>();
cities.add("Moscow");
cities.add("Berlin");
cities.add(1, "Paris");
System.out.println(cities.get(1)); // Paris
В этом случае нужен порядок и доступ по индексу — значит, выбираем
List.📌 Когда использовать что:
- Используй
Collection, если хочешь абстрагироваться от конкретной структуры и не используешь индексы.- Используй
List, если:- важен порядок добавления,
- нужен доступ по индексу,
- требуется вставка в определённое место.
🧠 Совет:
При проектировании методов или API лучше принимать
Collection — так ты не ограничиваешь пользователя в реализации. А если внутри метода тебе нужны индексы — переходи на
List.📲 Мы в MAX
👉@BookJava


