Учебники

Коллекции Apache Commons — интерфейс для сумок

Новые интерфейсы добавлены в пакеты поддержки. Bag определяет коллекцию, которая подсчитывает, сколько раз объект появляется в коллекции. Например, если Bag содержит {a, a, b, c}, тогда getCount («a») вернет 2, а uniqueSet () возвращает уникальные значения.

Декларация интерфейса

Ниже приводится объявление для интерфейса org.apache.commons.collections4.Bag <E> —

public interface Bag<E>
   extends Collection<E>

методы

Sr.No. Метод и описание
1

логическое сложение (объект E)

(Нарушение) Добавляет одну копию указанного объекта в сумку.

2

логическое добавление (объект E, int nCopies)

Добавляет nCopies копии указанного объекта в Bag.

3

логическое содержит все (коллекция <?> колл)

(Нарушение) Возвращает true, если сумка содержит все элементы в данной коллекции, учитывая количество элементов.

4

int getCount (Объектный объект)

Возвращает количество вхождений (кардинальности) данного объекта, который в данный момент находится в сумке.

5

Iterator <E> iterator ()

Возвращает Итератор для всего набора членов, включая копии из-за количества элементов.

6

логическое удаление (объектный объект)

(Нарушение) Удаляет все вхождения данного объекта из сумки.

7

логическое удаление (Object object, int nCopies)

Удаляет nCopies копии указанного объекта из сумки.

8

логическое removeAll (коллекция <?> coll)

(Нарушение) Удалите все элементы, представленные в данной коллекции, соблюдая количество элементов.

9

логическое retainAll (коллекция <?> coll)

(Нарушение) Удалите все элементы сумки, которых нет в данной коллекции, соблюдая количество элементов.

10

int size ()

Возвращает общее количество предметов в сумке для всех типов.

11

Установите <E> uniqueSet ()

Возвращает набор уникальных элементов в сумке.

логическое сложение (объект E)

(Нарушение) Добавляет одну копию указанного объекта в сумку.

логическое добавление (объект E, int nCopies)

Добавляет nCopies копии указанного объекта в Bag.

логическое содержит все (коллекция <?> колл)

(Нарушение) Возвращает true, если сумка содержит все элементы в данной коллекции, учитывая количество элементов.

int getCount (Объектный объект)

Возвращает количество вхождений (кардинальности) данного объекта, который в данный момент находится в сумке.

Iterator <E> iterator ()

Возвращает Итератор для всего набора членов, включая копии из-за количества элементов.

логическое удаление (объектный объект)

(Нарушение) Удаляет все вхождения данного объекта из сумки.

логическое удаление (Object object, int nCopies)

Удаляет nCopies копии указанного объекта из сумки.

логическое removeAll (коллекция <?> coll)

(Нарушение) Удалите все элементы, представленные в данной коллекции, соблюдая количество элементов.

логическое retainAll (коллекция <?> coll)

(Нарушение) Удалите все элементы сумки, которых нет в данной коллекции, соблюдая количество элементов.

int size ()

Возвращает общее количество предметов в сумке для всех типов.

Установите <E> uniqueSet ()

Возвращает набор уникальных элементов в сумке.

Унаследованные методы

Этот интерфейс наследует методы от следующего интерфейса —

  • java.util.Collection

Пример интерфейса сумки

BagTester.java

import org.apache.commons.collections4.Bag;
import org.apache.commons.collections4.bag.HashBag;

public class BagTester {
   public static void main(String[] args) {
      Bag<String> bag = new HashBag<>();

      //add "a" two times to the bag.
      bag.add("a" , 2);
      
      //add "b" one time to the bag.
      bag.add("b");
      
      //add "c" one time to the bag.
      bag.add("c");
      
      //add "d" three times to the bag.
      bag.add("d",3);
      
      //get the count of "d" present in bag.
      System.out.println("d is present " + bag.getCount("d") + " times.");
      System.out.println("bag: " +bag);
      
      //get the set of unique values from the bag
      System.out.println("Unique Set: " +bag.uniqueSet());
      
      //remove 2 occurrences of "d" from the bag
      bag.remove("d",2);
      System.out.println("2 occurences of d removed from bag: " +bag);
      System.out.println("d is present " + bag.getCount("d") + " times.");
      System.out.println("bag: " +bag);
      System.out.println("Unique Set: " +bag.uniqueSet());
   }
}

Выход

Будет напечатан следующий результат.