dart:collection
LinkedList<E extends LinkedListEntry<E>> 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.
- Inheritance
Constructors
- LinkedList()
- Construct a new empty linked list.
Properties
- first → E
read-only
- Returns the first element. [...]
- isEmpty → bool
read-only
- Returns
true
if there are no elements in this collection. [...] - iterator → Iterator<E>
read-only
- Returns a new
Iterator
that allows iterating the elements of this Iterable
. [...] - last → E
read-only
- Returns the last element. [...]
- length → int
read-only
- Returns the number of elements in this. [...]
- single → E
read-only
- Checks that this iterable has only one element, and returns that element. [...]
- 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.
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 test(E element)) → bool
inherited
- Checks whether any element of this iterable satisfies
test
. [...] - cast<R>() → Iterable<R>
inherited
- Provides a view of this iterable as an iterable of
R
instances. [...] - 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 test(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 [...]
- followedBy(Iterable<E> other) → Iterable<E>
inherited
- Returns the lazy concatentation of this iterable and
other
. [...] - 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 this Iterable
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 orElse() }) → 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 while test
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
- Creates a List containing the elements of this Iterable. [...]
- 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
. [...] - whereType<T>() → Iterable<T>
inherited
- Returns a new lazy Iterable with all elements that have type
T
. [...]
Operators
- operator ==(dynamic other) → bool
inherited
- The equality operator. [...]