Package org.apache.pivot.collections
Class LinkedList<T>
- java.lang.Object
-
- org.apache.pivot.collections.LinkedList<T>
-
- Type Parameters:
T
- The type of object stored in the list.
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Iterable<T>
,Collection<T>
,List<T>
,Sequence<T>
public class LinkedList<T> extends java.lang.Object implements List<T>, java.io.Serializable
Implementation of theList
interface that is backed by a linked list.NOTE This class is not thread-safe. For concurrent access, use a
SynchronizedList
.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.pivot.collections.List
List.ItemIterator<T>, List.ListListenerList<T>
-
Nested classes/interfaces inherited from interface org.apache.pivot.collections.Sequence
Sequence.Tree<T>
-
-
Constructor Summary
Constructors Constructor Description LinkedList()
LinkedList(java.util.Comparator<T> comparator)
LinkedList(Sequence<T> items)
LinkedList(T... items)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
add(T item)
Adds an item to the list.void
clear()
Removes all elements from the collection.boolean
equals(java.lang.Object o)
T
get(int index)
Retrieves the item at the given index.java.util.Comparator<T>
getComparator()
Returns the collection's sort order.int
getLength()
Returns the length of the list.ListenerList<ListListener<T>>
getListListeners()
Returns the list listener list.int
hashCode()
int
indexOf(T item)
Returns the index of an item in the sequence.void
insert(T item, int index)
Inserts an item into the list.boolean
isEmpty()
Tests the emptiness of the collection.List.ItemIterator<T>
iterator()
Sequence<T>
remove(int index, int count)
Removes one or more items from the sequence.int
remove(T item)
Removes the first occurrence of the given item from the sequence.void
setComparator(java.util.Comparator<T> comparator)
Sets the collection's sort order, re-ordering the collection's contents and ensuring that new entries preserve the sort order.java.lang.String
toString()
T
update(int index, T item)
Updates the item at the given index.
-
-
-
Method Detail
-
add
public int add(T item)
Description copied from interface:List
Adds an item to the list. If the list is unsorted, the item is appended to the end of the list. Otherwise, it is inserted at the appropriate index.
-
insert
public void insert(T item, int index)
Description copied from interface:List
Inserts an item into the list.
-
update
public T update(int index, T item)
Description copied from interface:List
Updates the item at the given index.- Specified by:
update
in interfaceList<T>
- Specified by:
update
in interfaceSequence<T>
- Parameters:
index
- The index of the item to update.item
- The item that will replace any existing value at the given index.- Returns:
- The item that was previously stored at the given index.
- See Also:
ListListener.itemUpdated(List, int, Object)
-
remove
public int remove(T item)
Description copied from interface:Sequence
Removes the first occurrence of the given item from the sequence.- Specified by:
remove
in interfaceSequence<T>
- Parameters:
item
- The item to remove.- Returns:
- The index of the item that was removed, or
-1
if the item could not be found. - See Also:
Sequence.remove(int, int)
-
remove
public Sequence<T> remove(int index, int count)
Description copied from interface:Sequence
Removes one or more items from the sequence.- Specified by:
remove
in interfaceList<T>
- Specified by:
remove
in interfaceSequence<T>
- Parameters:
index
- The starting index to remove.count
- The number of items to remove, beginning withindex
.- Returns:
- A sequence containing the items that were removed.
- See Also:
ListListener.itemsRemoved(List, int, Sequence)
-
clear
public void clear()
Description copied from interface:Collection
Removes all elements from the collection.- Specified by:
clear
in interfaceCollection<T>
- Specified by:
clear
in interfaceList<T>
- See Also:
ListListener.itemsRemoved(List, int, Sequence)
-
get
public T get(int index)
Description copied from interface:Sequence
Retrieves the item at the given index.
-
indexOf
public int indexOf(T item)
Description copied from interface:Sequence
Returns the index of an item in the sequence.
-
isEmpty
public boolean isEmpty()
Description copied from interface:Collection
Tests the emptiness of the collection.- Specified by:
isEmpty
in interfaceCollection<T>
- Returns:
true
if the collection contains no elements;false
, otherwise.
-
getLength
public int getLength()
Description copied from interface:List
Returns the length of the list.
-
getComparator
public java.util.Comparator<T> getComparator()
Description copied from interface:Collection
Returns the collection's sort order.- Specified by:
getComparator
in interfaceCollection<T>
- Returns:
- The comparator used to order elements in the collection, or
null
if the sort order is undefined. - See Also:
Collection.setComparator(Comparator)
-
setComparator
public void setComparator(java.util.Comparator<T> comparator)
Description copied from interface:Collection
Sets the collection's sort order, re-ordering the collection's contents and ensuring that new entries preserve the sort order.Calling this method more than once with the same comparator will re-sort the collection.
- Specified by:
setComparator
in interfaceCollection<T>
- Specified by:
setComparator
in interfaceList<T>
- Parameters:
comparator
- The comparator used to order elements in the collection, or null if the collection is unsorted.- See Also:
ListListener.comparatorChanged(List, Comparator)
-
iterator
public List.ItemIterator<T> iterator()
- Specified by:
iterator
in interfacejava.lang.Iterable<T>
-
getListListeners
public ListenerList<ListListener<T>> getListListeners()
Description copied from interface:List
Returns the list listener list.- Specified by:
getListListeners
in interfaceList<T>
- Returns:
- The list of listeners for this list.
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-