## org.apache.commons.collections.bag
Class TreeBag

    java.lang.Object
      org.apache.commons.collections.bag.AbstractMapBag
          org.apache.commons.collections.bag.TreeBag

All Implemented Interfaces:
  Bag, Collection, Serializable, SortedBag

public class TreeBag
extends AbstractMapBag
implements SortedBag, Serializable

Implements `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.

Since:
  Commons Collections 3.0 (previously in main package v2.0)
Version:
  $Revision: 1.9 $ $Date: 2004/02/18 00:56:25 $
Author:
  Chuck Burdick, Stephen Colebourne
See Also:
  Serialized Form

Nested Class Summary

Nested classes inherited from class org.apache.commons.collections.bag.AbstractMapBag
`AbstractMapBag.MutableInteger`

Constructor Summary
`TreeBag()` Constructs an empty `TreeBag`.
`TreeBag(Collection coll)` Constructs a `TreeBag` containing all the members of the specified collection.
`TreeBag(Comparator comparator)` Constructs an empty bag that maintains order on its unique representative members according to the given `Comparator`.

Method Summary
`Comparator` `comparator()` Returns the comparator associated with this sorted set, or null if it uses its elements' natural ordering.
`Object` `first()` Returns the first (lowest) member.
`Object` `last()` Returns the last (highest) member.

Methods inherited from class org.apache.commons.collections.bag.AbstractMapBag
`add, add, addAll, clear, contains, containsAll, doReadObject, doWriteObject, equals, getCount, getMap, hashCode, isEmpty, iterator, remove, remove, removeAll, retainAll, size, toArray, toArray, toString, uniqueSet`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.apache.commons.collections.Bag
`add, add, containsAll, getCount, iterator, remove, remove, removeAll, retainAll, size, uniqueSet`

Methods inherited from interface java.util.Collection
`addAll, clear, contains, equals, hashCode, isEmpty, toArray, toArray`

Constructor Detail

### TreeBag

    public TreeBag()

  Constructs an empty `TreeBag`.

### TreeBag

    public TreeBag(Comparator comparator)

  Constructs an empty bag that maintains order on its unique representative members according to the given `Comparator`.

Parameters:
  `comparator` - the comparator to use

### TreeBag

    public TreeBag(Collection coll)

  Constructs a `TreeBag` containing all the members of the specified collection.

Parameters:
  `coll` - the collection to copy into the bag

Method Detail

### first

    public Object first()

  Description copied from interface: `SortedBag`
  Returns the first (lowest) member.

  Specified by:
    `first` in interface `SortedBag`
  Returns:
    the first element in the sorted bag

### last

    public Object last()

  Description copied from interface: `SortedBag`
  Returns the last (highest) member.

  Specified by:
    `last` in interface `SortedBag`
  Returns:
    the last element in the sorted bag

### comparator

    public Comparator comparator()

  Description copied from interface: `SortedBag`
  Returns the comparator associated with this sorted set, or null if it uses its elements' natural ordering.

  Specified by:
    `comparator` in interface `SortedBag`
  Returns:
    the comparator in use, or null if natural ordering

Copyright © 2001-2005 Apache Software Foundation. All Rights Reserved.