public class TreeBag<E> extends AbstractMapBag<E> implements SortedBag<E>, Serializable
SortedBag
, using a TreeMap
to provide the data storage.
This is the standard implementation of a sorted bag.
Order will be maintained among the bag members and can be viewed through the iterator.
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.
AbstractMapBag.MutableInteger
Constructor and Description |
---|
TreeBag()
Constructs an empty
TreeBag . |
TreeBag(Collection<? extends E> coll)
Constructs a
TreeBag containing all the members of the
specified collection. |
TreeBag(Comparator<? super E> comparator)
Constructs an empty bag that maintains order on its unique representative
members according to the given
Comparator . |
Modifier and Type | Method and Description |
---|---|
boolean |
add(E object)
Adds a new element to the bag, incrementing its count in the underlying map.
|
Comparator<? super E> |
comparator()
Returns the comparator associated with this sorted set, or null
if it uses its elements' natural ordering.
|
E |
first()
Returns the first (lowest) member.
|
protected SortedMap<E,AbstractMapBag.MutableInteger> |
getMap()
Utility method for implementations to access the map that backs this bag.
|
E |
last()
Returns the last (highest) member.
|
add, addAll, clear, contains, containsAll, doReadObject, doWriteObject, equals, getCount, hashCode, isEmpty, iterator, remove, remove, removeAll, retainAll, size, toArray, toArray, toString, uniqueSet
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
public TreeBag()
TreeBag
.public TreeBag(Comparator<? super E> comparator)
Comparator
.comparator
- the comparator to usepublic TreeBag(Collection<? extends E> coll)
TreeBag
containing all the members of the
specified collection.coll
- the collection to copy into the bagpublic boolean add(E object)
add
in interface Collection<E>
add
in interface Bag<E>
add
in class AbstractMapBag<E>
object
- the object to addtrue
if the object was not already in the uniqueSet
IllegalArgumentException
- if the object to be added does not implement
Comparable
and the TreeBag
is using natural orderingpublic E first()
SortedBag
public E last()
SortedBag
public Comparator<? super E> comparator()
SortedBag
comparator
in interface SortedBag<E>
protected SortedMap<E,AbstractMapBag.MutableInteger> getMap()
AbstractMapBag
getMap
in class AbstractMapBag<E>
Copyright © 2001–2013 The Apache Software Foundation. All rights reserved.