Interface LinkedList<E>

All Superinterfaces:
Iterable<E>, Iterable<E>, List<E>, Traversable<E>
All Known Implementing Classes:
AbstractLinkedList, Cons, ConsList, Nil

public interface LinkedList<E> extends List<E>
LinkedList implementations guarantee fast access to the head via List.first() and tail via tail().
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull LinkedList<E>
    append(E elem)
    Returns a list with the specified element appended to the bottom of the list.
    @NotNull LinkedList<E>
    drop(int number)
    Returns a list containing all elements in this list, excluding the first number of elements.
    @NotNull LinkedList<E>
    prepend(E elem)
    Returns a list with the specified element prepended to the top of the list.
    @NotNull LinkedList<E>
    range(int from, boolean fromInclusive, int to, boolean toInclusive)
    Returns a list containing a contiguous range of elements from this list.
    @NotNull LinkedList<E>
    set(int i, E elem)
    Returns a list with the element set to the value specified at the index (zero-based).
    @NotNull LinkedList<E>
    Returns a list containing all elements in the list, excluding the first element.
    @NotNull LinkedList<E>
    take(int number)
    Returns a list containing the first number of elements from this list.

    Methods inherited from interface com.github.andrewoma.dexx.collection.Iterable

    iterator

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator

    Methods inherited from interface com.github.andrewoma.dexx.collection.List

    asList, first, get, indexOf, last, lastIndexOf

    Methods inherited from interface com.github.andrewoma.dexx.collection.Traversable

    forEach, isEmpty, makeString, makeString, size, to, toArray, toArray, toIndexedList, toSet, toSortedSet
  • Method Details

    • set

      @NotNull @NotNull LinkedList<E> set(int i, E elem)
      Description copied from interface: List
      Returns a list with the element set to the value specified at the index (zero-based).
      Specified by:
      set in interface List<E>
    • append

      @NotNull @NotNull LinkedList<E> append(E elem)
      Description copied from interface: List
      Returns a list with the specified element appended to the bottom of the list.
      Specified by:
      append in interface List<E>
    • prepend

      @NotNull @NotNull LinkedList<E> prepend(E elem)
      Description copied from interface: List
      Returns a list with the specified element prepended to the top of the list.
      Specified by:
      prepend in interface List<E>
    • drop

      @NotNull @NotNull LinkedList<E> drop(int number)
      Description copied from interface: List
      Returns a list containing all elements in this list, excluding the first number of elements.
      Specified by:
      drop in interface List<E>
    • take

      @NotNull @NotNull LinkedList<E> take(int number)
      Description copied from interface: List
      Returns a list containing the first number of elements from this list.
      Specified by:
      take in interface List<E>
    • tail

      @NotNull @NotNull LinkedList<E> tail()
      Description copied from interface: List
      Returns a list containing all elements in the list, excluding the first element. An empty list is returned if the list is empty.
      Specified by:
      tail in interface List<E>
    • range

      @NotNull @NotNull LinkedList<E> range(int from, boolean fromInclusive, int to, boolean toInclusive)
      Description copied from interface: List
      Returns a list containing a contiguous range of elements from this list.
      Specified by:
      range in interface List<E>
      Parameters:
      from - starting index for the range (zero-based)
      fromInclusive - if true, the element at the from index will be included
      to - end index for the range (zero-based)
      toInclusive - if true, the element at the to index will be included