Class HashBag<E>
- Type Parameters:
E- The type of elements in this bag
- All Implemented Interfaces:
Serializable,Iterable<E>,Collection<E>,Bag<E>
Bag, using a HashMap to provide the
data storage. This is the standard implementation of a bag.
A Bag stores each object in the collection together with a
count of occurrences. Extra methods on the interface allow multiple copies
of an object to be added or removed at once. It is important to read the
interface Javadoc carefully as several methods violate the
Collection interface specification.
Note that HashBag is not synchronized and is not thread-safe.
If you wish to use this bag from multiple threads concurrently, you must use
appropriate synchronization. The simplest approach is to wrap this bag using
BagUtils.synchronizedBag(Bag).
Unsynchronized concurrent modification can corrupt the structure of the backing
HashMap, which may cause subsequent operations to throw exceptions,
return incorrect results, or loop indefinitely.
- Since:
- 3.0 (previously in main package v2.0)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.commons.collections4.bag.AbstractMapBag
AbstractMapBag.MutableInteger -
Constructor Summary
ConstructorsConstructorDescriptionHashBag()Deprecated.Constructs an emptyHashBag.Deprecated.Constructs a bag containing all the members of the given Iterable.HashBag(Collection<? extends E> collection) Deprecated.Constructs a bag containing all the members of the given Collection. -
Method Summary
Methods inherited from class org.apache.commons.collections4.bag.AbstractMapBag
add, add, addAll, clear, contains, containsAll, doReadObject, doWriteObject, equals, getCount, getMap, hashCode, isEmpty, iterator, remove, remove, removeAll, retainAll, size, toArray, toArray, toString, uniqueSetMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, removeIf, spliterator, stream
-
Constructor Details
-
HashBag
public HashBag()Deprecated.Constructs an emptyHashBag. -
HashBag
Deprecated.Constructs a bag containing all the members of the given Collection.- Parameters:
collection- A collection to copy into this bag.
-
HashBag
Deprecated.Constructs a bag containing all the members of the given Iterable.- Parameters:
iterable- An iterable to copy into this bag.- Since:
- 4.5.0-M3
-
HashMultiSetinstead.