LinkedList class
A specialized double-linked list of elements that extends LinkedListEntry.
This is not a generic data structure. It only accepts elements that extend the LinkedListEntry class. See the Queue implementations for generic collections that allow constant time adding and removing at the ends.
This is not a List implementation. Despite its name, this class does not implement the List interface. It does not allow constant time lookup by index.
Because the elements themselves contain the links of this linked list, each element can be in only one list at a time. To add an element to another list, it must first be removed from its current list (if any).
In return, each element knows its own place in the linked list, as well as which list it is in. This allows constant time LinkedListEntry.insertAfter, LinkedListEntry.insertBefore and LinkedListEntry.unlink operations when all you have is the element.
A LinkedList
also allows constant time adding and removing at either end, and a constant time length getter.
Constructors
- LinkedList()
-
Construct a new empty linked list.
Properties
- first → E read-only
- isEmpty → bool read-only
- iterator → Iterator<E> read-only
- last → E read-only
- length → int read-only
- single → E read-only
- hashCode → int read-only, inherited
-
The hash code for this object.
- isNotEmpty → bool read-only, inherited
-
Returns true if there is at least one element in this collection.
- runtimeType → Type read-only, inherited
-
A representation of the runtime type of the object.
Operators
- operator ==(
other) → bool inherited -
The equality operator.
Methods
- add(
E entry) → void -
Add
entry
to the end of the linked list. - addAll(
Iterable<E> entries) → void -
Add
entries
to the end of the linked list. - addFirst(
E entry) → void -
Add
entry
to the beginning of the linked list. - clear(
) → void -
Remove all elements from this linked list.
- forEach(
void action(E entry)) → void -
Call
action
with each entry in this linked list. - remove(
E entry) → bool -
Remove
entry
from the linked list. - any(
bool f(E element)) → bool inherited -
Checks whether any element of this iterable satisfies
test
. - contains(
Object element) → bool inherited -
Returns true if the collection contains an element equal to
element
. - elementAt(
int index) → E inherited -
Returns the
index
th element. - every(
bool f(E element)) → bool inherited -
Checks whether every element of this iterable satisfies
test
. - expand<T>(
Iterable<T> f(E element)) → Iterable<T> inherited -
Expands each element of this Iterable into zero or more elements.
- firstWhere(
bool test(E element), { E orElse() }) → E inherited -
Returns the first element that satisfies the given predicate
test
. - fold<T>(
T initialValue, T combine(T previousValue, E element)) → T inherited -
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
- join(
[String separator = "" ]) → String inherited -
Converts each element to a String and concatenates the strings.
- lastWhere(
bool test(E element), { E orElse() }) → E inherited -
Returns the last element that satisfies the given predicate
test
. - map<T>(
T f(E e)) → Iterable<T> inherited -
Returns a new lazy Iterable with elements that are created by calling
f
on each element of thisIterable
in iteration order. - noSuchMethod(
Invocation invocation) → dynamic inherited -
Invoked when a non-existent method or property is accessed.
- reduce(
E combine(E value, E element)) → E inherited -
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
- singleWhere(
bool test(E element)) → E inherited -
Returns the single element that satisfies
test
. - skip(
int count) → Iterable<E> inherited -
Returns an Iterable that provides all but the first
count
elements. - skipWhile(
bool test(E value)) → Iterable<E> inherited -
Returns an
Iterable
that skips leading elements whiletest
is satisfied. - take(
int count) → Iterable<E> inherited -
Returns a lazy iterable of the
count
first elements of this iterable. - takeWhile(
bool test(E value)) → Iterable<E> inherited -
Returns a lazy iterable of the leading elements satisfying
test
. - toList(
{bool growable: true }) → List<E> inherited - toSet(
) → Set<E> inherited -
Creates a Set containing the same elements as this iterable.
- toString(
) → String inherited -
Returns a string representation of (some of) the elements of
this
. - where(
bool test(E element)) → Iterable<E> inherited -
Returns a new lazy Iterable with all elements that satisfy the predicate
test
.
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-collection/LinkedList-class.html