Class TreeList
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList
-
- org.apache.commons.collections.list.TreeList
-
- All Implemented Interfaces:
java.lang.Iterable
,java.util.Collection
,java.util.List
@Deprecated(since="2021-04-30") public class TreeList extends java.util.AbstractList
Deprecated.Commons Collections 3 is in maintenance mode. Commons Collections 4 should be used instead.AList
implementation that is optimised for fast insertions and removals at any index in the list.This list implementation utilises a tree structure internally to ensure that all insertions and removals are O(log n). This provides much faster performance than both an
ArrayList
and aLinkedList
where elements are inserted and removed repeatedly from anywhere in the list.The following relative performance statistics are indicative of this class:
get add insert iterate remove TreeList 3 5 1 2 1 ArrayList 1 1 40 1 40 LinkedList 5800 1 350 2 325
ArrayList
is a good general purpose list implementation. It is faster thanTreeList
for most operations except inserting and removing in the middle of the list.ArrayList
also uses less memory asTreeList
uses one object per entry.LinkedList
is rarely a good choice of implementation.TreeList
is almost always a good replacement for it, although it does use sligtly more memory.- Since:
- Commons Collections 3.1
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
add(int index, java.lang.Object obj)
Deprecated.Adds a new element to the list.void
clear()
Deprecated.Clears the list, removing all entries.boolean
contains(java.lang.Object object)
Deprecated.Searches for the presence of an object in the list.java.lang.Object
get(int index)
Deprecated.Gets the element at the specified index.int
indexOf(java.lang.Object object)
Deprecated.Searches for the index of an object in the list.java.util.Iterator
iterator()
Deprecated.Gets an iterator over the list.java.util.ListIterator
listIterator()
Deprecated.Gets a ListIterator over the list.java.util.ListIterator
listIterator(int fromIndex)
Deprecated.Gets a ListIterator over the list.java.lang.Object
remove(int index)
Deprecated.Removes the element at the specified index.java.lang.Object
set(int index, java.lang.Object obj)
Deprecated.Sets the element at the specified index.int
size()
Deprecated.Gets the current size of the list.java.lang.Object[]
toArray()
Deprecated.Converts the list into an array.-
Methods inherited from class java.util.AbstractList
add, addAll, equals, hashCode, lastIndexOf, subList
-
-
-
-
Constructor Detail
-
TreeList
public TreeList()
Deprecated.Constructs a new empty list.
-
TreeList
public TreeList(java.util.Collection coll)
Deprecated.Constructs a new empty list that copies the specified list.- Parameters:
coll
- the collection to copy- Throws:
java.lang.NullPointerException
- if the collection is null
-
-
Method Detail
-
get
public java.lang.Object get(int index)
Deprecated.Gets the element at the specified index.- Specified by:
get
in interfacejava.util.List
- Specified by:
get
in classjava.util.AbstractList
- Parameters:
index
- the index to retrieve- Returns:
- the element at the specified index
-
size
public int size()
Deprecated.Gets the current size of the list.- Specified by:
size
in interfacejava.util.Collection
- Specified by:
size
in interfacejava.util.List
- Specified by:
size
in classjava.util.AbstractCollection
- Returns:
- the current size
-
iterator
public java.util.Iterator iterator()
Deprecated.Gets an iterator over the list.- Specified by:
iterator
in interfacejava.util.Collection
- Specified by:
iterator
in interfacejava.lang.Iterable
- Specified by:
iterator
in interfacejava.util.List
- Overrides:
iterator
in classjava.util.AbstractList
- Returns:
- an iterator over the list
-
listIterator
public java.util.ListIterator listIterator()
Deprecated.Gets a ListIterator over the list.- Specified by:
listIterator
in interfacejava.util.List
- Overrides:
listIterator
in classjava.util.AbstractList
- Returns:
- the new iterator
-
listIterator
public java.util.ListIterator listIterator(int fromIndex)
Deprecated.Gets a ListIterator over the list.- Specified by:
listIterator
in interfacejava.util.List
- Overrides:
listIterator
in classjava.util.AbstractList
- Parameters:
fromIndex
- the index to start from- Returns:
- the new iterator
-
indexOf
public int indexOf(java.lang.Object object)
Deprecated.Searches for the index of an object in the list.- Specified by:
indexOf
in interfacejava.util.List
- Overrides:
indexOf
in classjava.util.AbstractList
- Returns:
- the index of the object, -1 if not found
-
contains
public boolean contains(java.lang.Object object)
Deprecated.Searches for the presence of an object in the list.- Specified by:
contains
in interfacejava.util.Collection
- Specified by:
contains
in interfacejava.util.List
- Overrides:
contains
in classjava.util.AbstractCollection
- Returns:
- true if the object is found
-
toArray
public java.lang.Object[] toArray()
Deprecated.Converts the list into an array.- Specified by:
toArray
in interfacejava.util.Collection
- Specified by:
toArray
in interfacejava.util.List
- Overrides:
toArray
in classjava.util.AbstractCollection
- Returns:
- the list as an array
-
add
public void add(int index, java.lang.Object obj)
Deprecated.Adds a new element to the list.- Specified by:
add
in interfacejava.util.List
- Overrides:
add
in classjava.util.AbstractList
- Parameters:
index
- the index to add beforeobj
- the element to add
-
set
public java.lang.Object set(int index, java.lang.Object obj)
Deprecated.Sets the element at the specified index.- Specified by:
set
in interfacejava.util.List
- Overrides:
set
in classjava.util.AbstractList
- Parameters:
index
- the index to setobj
- the object to store at the specified index- Returns:
- the previous object at that index
- Throws:
java.lang.IndexOutOfBoundsException
- if the index is invalid
-
remove
public java.lang.Object remove(int index)
Deprecated.Removes the element at the specified index.- Specified by:
remove
in interfacejava.util.List
- Overrides:
remove
in classjava.util.AbstractList
- Parameters:
index
- the index to remove- Returns:
- the previous object at that index
-
clear
public void clear()
Deprecated.Clears the list, removing all entries.- Specified by:
clear
in interfacejava.util.Collection
- Specified by:
clear
in interfacejava.util.List
- Overrides:
clear
in classjava.util.AbstractList
-
-