java.util
Class LinkedList
- Cloneable, Collection, Iterable, List, Serializable
Linked list implementation of the List interface. In addition to the
methods of the List interface, this class provides access to the first
and last list elements in O(1) time for easy stack, queue, or double-ended
queue (deque) creation. The list is doubly-linked, with traversal to a
given index starting from the end closest to the element.
LinkedList is not synchronized, so if you need multi-threaded access,
consider using:
List l = Collections.synchronizedList(new LinkedList(...));
The iterators are
fail-fast, meaning that any structural
modification, except for
remove()
called on the iterator
itself, cause the iterator to throw a
ConcurrentModificationException
rather than exhibit
non-deterministic behavior.
void | add(int index, Object o) - Inserts an element in the given position in the list.
|
boolean | add(Object o) - Adds an element to the end of the list.
|
boolean | addAll(int index, Collection c) - Insert the elements of the collection in iteration order at the given
index of this list.
|
boolean | addAll(Collection c) - Append the elements of the collection in iteration order to the end of
this list.
|
void | addFirst(Object o) - Insert an element at the first of the list.
|
void | addLast(Object o) - Insert an element at the last of the list.
|
void | clear() - Remove all elements from this list.
|
Object | clone() - Create a shallow copy of this LinkedList (the elements are not cloned).
|
boolean | contains(Object o) - Returns true if the list contains the given object.
|
Object | get(int index) - Return the element at index.
|
Object | getFirst() - Returns the first element in the list.
|
Object | getLast() - Returns the last element in the list.
|
int | indexOf(Object o) - Returns the first index where the element is located in the list, or -1.
|
int | lastIndexOf(Object o) - Returns the last index where the element is located in the list, or -1.
|
ListIterator | listIterator(int index) - Obtain a ListIterator over this list, starting at a given index.
|
Object | remove(int index) - Removes the element at the given position from the list.
|
boolean | remove(Object o) - Removes the entry at the lowest index in the list that matches the given
object, comparing by
o == null ?
|
Object | removeFirst() - Remove and return the first element in the list.
|
Object | removeLast() - Remove and return the last element in the list.
|
Object | set(int index, Object o) - Replace the element at the given location in the list.
|
int | size() - Returns the size of the list.
|
Object[] | toArray() - Returns an array which contains the elements of the list in order.
|
Object[] | toArray(Object[] a) - Returns an Array whose component type is the runtime component type of
the passed-in Array.
|
add , add , addAll , clear , equals , get , hashCode , indexOf , iterator , lastIndexOf , listIterator , listIterator , remove , removeRange , set , subList |
add , addAll , clear , contains , containsAll , isEmpty , iterator , remove , removeAll , retainAll , size , toArray , toArray , toString |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
LinkedList
public LinkedList()
Create an empty linked list.
LinkedList
public LinkedList(Collection c)
Create a linked list containing the elements, in order, of a given
collection.
c
- the collection to populate this list from
add
public void add(int index,
Object o)
Inserts an element in the given position in the list.
- add in interface List
- add in interface AbstractSequentialList
index
- where to insert the elemento
- the element to insert
addAll
public boolean addAll(int index,
Collection c)
Insert the elements of the collection in iteration order at the given
index of this list. If this list is modified externally (for example,
if this list is the collection), behavior is unspecified.
- addAll in interface List
- addAll in interface AbstractSequentialList
c
- the collection to append
- true if the list was modified
addAll
public boolean addAll(Collection c)
Append the elements of the collection in iteration order to the end of
this list. If this list is modified externally (for example, if this
list is the collection), behavior is unspecified.
- addAll in interface List
- addAll in interface Collection
- addAll in interface AbstractCollection
c
- the collection to append
- true if the list was modified
addFirst
public void addFirst(Object o)
Insert an element at the first of the list.
o
- the element to insert
addLast
public void addLast(Object o)
Insert an element at the last of the list.
o
- the element to insert
clone
public Object clone()
Create a shallow copy of this LinkedList (the elements are not cloned).
- clone in interface Object
- an object of the same class as this object, containing the
same elements in the same order
getFirst
public Object getFirst()
Returns the first element in the list.
getLast
public Object getLast()
Returns the last element in the list.
indexOf
public int indexOf(Object o)
Returns the first index where the element is located in the list, or -1.
- indexOf in interface List
- indexOf in interface AbstractList
o
- the element to look for
- its position, or -1 if not found
listIterator
public ListIterator listIterator(int index)
Obtain a ListIterator over this list, starting at a given index. The
ListIterator returned by this method supports the add, remove and set
methods.
- listIterator in interface List
- listIterator in interface AbstractSequentialList
index
- the index of the element to be returned by the first call to
next(), or size() to be initially positioned at the end of the list
removeFirst
public Object removeFirst()
Remove and return the first element in the list.
- the former first element in the list
removeLast
public Object removeLast()
Remove and return the last element in the list.
- the former last element in the list
toArray
public Object[] toArray(Object[] a)
Returns an Array whose component type is the runtime component type of
the passed-in Array. The returned Array is populated with all of the
elements in this LinkedList. If the passed-in Array is not large enough
to store all of the elements in this List, a new Array will be created
and returned; if the passed-in Array is larger than the size
of this List, then size() index will be set to null.
- toArray in interface List
- toArray in interface Collection
- toArray in interface AbstractCollection
- an array representation of this list
LinkedList.java -- Linked list implementation of the List interface
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version.