Интерфейс Collection – это основа, на которой построена структура коллекций в Java. Он объявляет основные методы, которые будут иметь все коллекции. Эти методы приведены в следующей таблице.

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

Методы

Метод и описание
1 boolean add(Object obj)
Добавляет obj к вызывающей коллекции. Возвращает true, если объект был добавлен в коллекцию. Возвращает false, если obj уже является членом коллекции, или если коллекция не позволяет иметь дубликаты.
2 boolean addAll(Collection c)
Добавляет все элементы c в вызывающую коллекцию. Возвращает true, если операция прошла успешно (т.е. элементы были добавлены). В противном случае возвращает false.
3 void clear( )
Удаляет все элементы из вызывающей коллекции.
4 boolean contains(Object obj)
Возвращает true, если obj является элементом вызывающей коллекции. В противном случае возвращает false.
5 boolean containsAll(Collection c)
Возвращает true, если вызывающая коллекция содержит все элементы c. В противном случае возвращает false.
6 boolean equals(Object obj)
Возвращает true, если вызывающая коллекция and obj are equal. В противном случае возвращает false.
7 int hashCode( )
Возвращает хэш-код для вызывающей коллекции.
8 boolean isEmpty( )
Возвращает true, если вызывающая коллекция пустая. В противном случае возвращает false.
9 Iterator iterator( )
Возвращает итератор для вызывающей коллекции.
10 boolean remove(Object obj)
Удаляет один экземпляр obj из вызывающей коллекции. Возвращает true, если элемент был удалён. В противном случае возвращает false.
11 boolean removeAll(Collection c)
Удаляет все элементы c из вызывающей коллекции. Возвращает true, если коллекция изменилась (т.е. элементы были удалены). В противном случае возвращает false.
12 boolean retainAll(Collection c
Удаляет все элементы из вызывающей коллекции, кроме тех, что содержатся в c. Возвращает true, если коллекция изменилась (т.е. элементы были удалены. В противном случае возвращает false.
13 int size(
Возвращает количество элементов, хранящихся в вызывающей коллекции.
14 Object[ ] toArray( )
Возвращает массив, которые содержит все элементы, хранящиеся в вызывающей коллекции. Элементы массива являются копиями элементов коллекции.
15 Object[ ] toArray(Object array[ ]
Возвращает массив, содержащий только те элементы коллекции, тип которых соответствует массиву.

Пример

Ниже приведён пример, объясняющий несколько методов из различных реализаций классов из вышеупомянутых методов коллекций:

import java.util.*;

public class CollectionsDemo {

   public static void main(String[] args) {

      // ArrayList

      List a1 = new ArrayList();

      a1.add("Заря");

      a1.add("Марк");

      a1.add("Айан");

      System.out.println(" ArrayList Элементы");

      System.out.print("\t" + a1);

      // LinkedList

      List l1 = new LinkedList();

      l1.add("Заря");

      l1.add("Марк");

      l1.add("Айан");

      System.out.println();

      System.out.println(" LinkedList Элементы");

      System.out.print("\t" + l1);

      // HashSet

      Set s1 = new HashSet();

      s1.add("Заря");

      s1.add("Марк");

      s1.add("Айан");

      System.out.println();

      System.out.println(" Set Элементы");

      System.out.print("\t" + s1);

      // HashMap

      Map m1 = new HashMap();

      m1.put("Заря", "8");

      m1.put("Марк", "31");

      m1.put("Айан", "12");

      m1.put("Дэйзи", "14");

      System.out.println();

      System.out.println(" Map Элементы");

      System.out.print("\t" + m1);

   }

}

Получим следующий результат:

ArrayList Элементы

[Заря, Марк, Айан]

LinkedList Элементы

[Заря, Марк, Айан]

Set Элементы

[Айан, Заря, Марк]

Map Элементы

{Дэйзи = 14, Айан = 12, Заря = 8, Марк = 31}

Оглавление