Class LinkedList<E>
java.lang.Object
ch.nolix.base.container.base.AbstractContainer<E>
ch.nolix.base.container.arraylist.AbstractExtendedContainer<E>
ch.nolix.base.container.linkedlist.LinkedList<E>
- Type Parameters:
E- is the type of the elements of aLinkedList.
- All Implemented Interfaces:
Filterable<E>, Groupable<E>, IContainer<E>, IFilteringContainerViewProvider<E>, IIntervallContainerViewProvider<E>, IMappingContainerViewProvider<E>, Mappable<E>, AggregationRequestable<E>, ArrayMappable<E>, CountRequestable<E>, IndexRequestable<E>, IterableWithCopyableIterator<E>, SingleSearchable<E>, StoringRequestable<E>, StringMappable, ILinkedList<E>, Copyable<ILinkedList<E>>, Clearable, EmptinessRequestable, MaterializationRequestable, Iterable<E>
A
LinkedList is a AbstractContainer that can add elements at
the begin or end. A LinkedList is clearable.- Author:
- Silvan Wyss
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddAtBegin(E element) Adds the given element at the begin of the currentILinkedList.voidaddAtBegin(E[] elements) The time complexity of this implementation is O(n) if n elements are given.voidaddAtBegin(E element, E... elements) Adds the given element and the given elements at the begin of the currentILinkedList.voidaddAtBegin(Iterable<? extends E> elements) Adds the given elements at the begin of the currentILinkedList.voidThe time complexity of this implementation is O(1).voidThe time complexity of this implementation is O(n) if n elements are given.final voidThe time complexity of this implementation is O(n) if n elements are given.voidAdds the given elements at the end of the currentLinkedList.voidclear()Removes all elements of the currentLinkedList.static <T> LinkedList<T> booleanAn object equals a list if it is a list containing exactly the same elements.static <T> LinkedList<T> fromArray(T[] array) static <T> LinkedList<T> fromIterable(Iterable<T> container) getCopy()The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.intgetCount()The time complexity of this implementation is O(1).getStoredAtOneBasedIndex(int oneBasedIndex) The time complexity of this implementation is O(n) if the currentAbstractContainercontains n elements.inthashCode()booleanThe time complexity of this implementation is O(1).iterator()The time complexity of this implementation is O(1).voidThe time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.voidremoveAllOccurrencesOf(Object element) The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.The time complexity of this implementation is O(1).removeAndGetStoredFirst(Predicate<E> selector) The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.The time complexity of this implementation is O(1).voidThe time complexity of this implementation is O(1).voidremoveFirst(Predicate<E> selector) The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.voidremoveFirstOccurrenceOf(Object element) The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.voidThe time complexity of this implementation is O(1).voidThe time complexity of this implementation is O(n).voidThe time complexity of this implementation is O(n).voidremoveStrictlyFirstOccurrenceOf(Object element) The time complexity of this implementation is O(n).voidreplaceFirst(Predicate<E> selector, E element) The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.toString()The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.static <T> LinkedList<T> withElement(T... element) static <T> LinkedList<T> withElements(T... elements) Methods inherited from class AbstractExtendedContainer
getViewFromOneBasedStartIndexToOneBasedEndIndex, getViewOf, getViewOfStoredSelected, toOrderedListMethods inherited from class AbstractContainer
contains, containsAllOf, containsAllOf, containsAny, containsAnyOf, containsAnyOf, containsAsManyAs, containsEqualing, containsExactlyEqualingInSameOrder, containsExactlyInSameOrder, containsLessThan, containsMoreThan, containsNone, containsNoneOf, containsNoneOf, containsOnce, containsOne, containsOne, containsOneEqualing, containsOnly, getAverage, getAverageOrZero, getCount, getCountOf, getMax, getMaxOrZero, getMedian, getMedianOrZero, getMin, getMinOrZero, getOneBasedIndexOfFirst, getOneBasedIndexOfFirstEqualElement, getOneBasedIndexOfFirstOccurrenceOf, getOptionalStoredFirst, getOptionalStoredFirst, getStandardDeviation, getStoredByMax, getStoredByMin, getStoredFirst, getStoredFirst, getStoredFirstOfType, getStoredInGroups, getStoredLast, getStoredOfType, getStoredOne, getStoredOne, getStoredOthers, getStoredSelected, getSum, getSumOfInts, getVariance, getViewFromOneBasedStartIndex, getViewToOneBasedEndIndex, getViewWithoutFirst, getViewWithoutFirst, getViewWithoutLast, getViewWithoutLast, isEmpty, to, toArray, toByteArray, toCharArray, toConcatenatedString, toDoubleArray, toIntArray, toLongArray, toMultiples, toNumbers, toReversedList, toStringArray, toStrings, toStringWithSeparator, toStringWithSeparator, toWithOneBasedIndexMethods inherited from interface AggregationRequestable
getAverage, getAverageOrZero, getMax, getMaxOrZero, getMedian, getMedianOrZero, getMin, getMinOrZero, getStandardDeviation, getSum, getSumOfInts, getVarianceMethods inherited from interface ArrayMappable
toArray, toByteArray, toCharArray, toDoubleArray, toIntArray, toLongArray, toStringArrayMethods inherited from interface CountRequestable
getCount, getCountOfMethods inherited from interface EmptinessRequestable
containsAny, isEmptyMethods inherited from interface Filterable
getStoredOfType, getStoredOthers, getStoredSelectedMethods inherited from interface Groupable
getStoredInGroupsMethods inherited from interface IContainer
toOrderedList, toReversedListMethods inherited from interface IFilteringContainerViewProvider
getViewOfStoredSelectedMethods inherited from interface IIntervallContainerViewProvider
getViewFromOneBasedStartIndex, getViewFromOneBasedStartIndexToOneBasedEndIndex, getViewToOneBasedEndIndex, getViewWithoutFirst, getViewWithoutFirst, getViewWithoutLast, getViewWithoutLastMethods inherited from interface IMappingContainerViewProvider
getViewOfMethods inherited from interface IndexRequestable
getOneBasedIndexOfFirst, getOneBasedIndexOfFirstEqualElement, getOneBasedIndexOfFirstOccurrenceOfMethods inherited from interface Iterable
forEach, spliteratorMethods inherited from interface Mappable
to, toMultiples, toNumbers, toStrings, toWithOneBasedIndexMethods inherited from interface MaterializationRequestable
isViewMethods inherited from interface SingleSearchable
getOptionalStoredFirst, getOptionalStoredFirst, getStoredByMax, getStoredByMin, getStoredFirst, getStoredFirst, getStoredFirstOfType, getStoredLast, getStoredOne, getStoredOneMethods inherited from interface StoringRequestable
contains, containsAllOf, containsAllOf, containsAny, containsAnyOf, containsAnyOf, containsAsManyAs, containsEqualing, containsExactlyEqualingInSameOrder, containsExactlyInSameOrder, containsLessThan, containsMoreThan, containsNone, containsNoneOf, containsNoneOf, containsOnce, containsOne, containsOne, containsOneEqualing, containsOnlyMethods inherited from interface StringMappable
toConcatenatedString, toStringWithSeparator, toStringWithSeparator
-
Method Details
-
createEmpty
- Type Parameters:
T- is the type of the elements of the createdLinkedList.- Returns:
- a new empty
LinkedList.
-
fromArray
- Type Parameters:
T- is the type of the elements of the given array.- Parameters:
array-- Returns:
- a new
LinkedListwith the elements in the given array. - Throws:
RuntimeException- if the given array is null.RuntimeException- if one of the elements in the given array is null.
-
fromIterable
- Type Parameters:
T- is the type of the elements of the given container.- Parameters:
container-- Returns:
- a new
LinkedListwith the elements in the given container. - Throws:
RuntimeException- if the given container is null.RuntimeException- if one of the elements in the given container is null.
-
withElement
- Type Parameters:
T- is the type of the given element.- Parameters:
element-- Returns:
- a new
LinkedListwith the given element. - Throws:
RuntimeException- if one of the given element is null.
-
withElements
- Type Parameters:
T- is the type of the given elements.- Parameters:
elements-- Returns:
- a new
LinkedListwith the given elements. - Throws:
RuntimeException- if one of the given elements is null.
-
addAtBegin
Adds the given element at the begin of the currentILinkedList.- Specified by:
addAtBeginin interfaceILinkedList<E>- Parameters:
element-
-
addAtBegin
Adds the given element and the given elements at the begin of the currentILinkedList. The elements will be added in the given order.- Specified by:
addAtBeginin interfaceILinkedList<E>- Parameters:
element-elements-
-
addAtBegin
The time complexity of this implementation is O(n) if n elements are given. Adds the given elements at the begin of the currentILinkedList. The elements will be added in the given order.- Specified by:
addAtBeginin interfaceILinkedList<E>- Parameters:
elements-
-
addAtBegin
Adds the given elements at the begin of the currentILinkedList. The elements will be added in the given order.- Specified by:
addAtBeginin interfaceILinkedList<E>- Parameters:
elements-
-
addAtEnd
The time complexity of this implementation is O(1). Adds the given element at the end of the currentILinkedList.- Specified by:
addAtEndin interfaceILinkedList<E>- Parameters:
element-
-
addAtEnd
The time complexity of this implementation is O(n) if n elements are given. Adds the given element and the given elements at the end of the currentILinkedList. The elements will be added in the given order.- Specified by:
addAtEndin interfaceILinkedList<E>- Parameters:
element-elements-
-
addAtEnd
The time complexity of this implementation is O(n) if n elements are given. Adds the given elements at the end of the currentILinkedList. The elements will be added in the given order.- Specified by:
addAtEndin interfaceILinkedList<E>- Parameters:
elements-
-
addAtEnd
Adds the given elements at the end of the currentLinkedList. The complexity of this implementation is O(n) if n elements are given.- Specified by:
addAtEndin interfaceILinkedList<E>- Parameters:
elements-- Throws:
RuntimeException- if one of the given elements is null.
-
clear
public void clear()Removes all elements of the currentLinkedList. The complexity of this implementation is O(n) when the currentLinkedListcontains n elements. -
equals
-
getCopy
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements. -
getCount
public int getCount()The time complexity of this implementation is O(1).- Specified by:
getCountin interfaceCountRequestable<E>- Returns:
- the number of elements of the current
LinkedList.
-
getStoredAtOneBasedIndex
The time complexity of this implementation is O(n) if the currentAbstractContainercontains n elements.- Specified by:
getStoredAtOneBasedIndexin interfaceSingleSearchable<E>- Parameters:
oneBasedIndex-- Returns:
- the element at the given index.
- Throws:
RuntimeException- if the given index is not positive.ArgumentDoesNotHaveAttributeException- if the currentAbstractContainerdoes not contain an element at the given index.
-
hashCode
-
isMaterialized
public boolean isMaterialized()The time complexity of this implementation is O(1).- Specified by:
isMaterializedin interfaceMaterializationRequestable- Returns:
- true if the current
MaterializationRequestableis materialized, false otherwise.
-
iterator
The time complexity of this implementation is O(1).- Specified by:
iteratorin interfaceIterable<E>- Specified by:
iteratorin interfaceIterableWithCopyableIterator<E>- Returns:
- a new iterator of the current
LinkedList.
-
removeAll
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements. Removes all elements from the currentILinkedListthe given selector selects.- Specified by:
removeAllin interfaceILinkedList<E>- Parameters:
selector-
-
removeAllOccurrencesOf
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements. Removes all occurrences of the given element from the currentILinkedList.- Specified by:
removeAllOccurrencesOfin interfaceILinkedList<E>- Parameters:
element-
-
removeAndGetStoredFirst
The time complexity of this implementation is O(1). Removes and returns the first element of the currentILinkedList.- Specified by:
removeAndGetStoredFirstin interfaceILinkedList<E>- Returns:
- the first element of the current
ILinkedList.
-
removeAndGetStoredFirst
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements. Removes and returns the first element the given selector selects from the currentILinkedList.- Specified by:
removeAndGetStoredFirstin interfaceILinkedList<E>- Parameters:
selector-- Returns:
- the first element the given selector selects from the current
ILinkedList.
-
removeAndGetStoredLast
The time complexity of this implementation is O(1). Removes and returns the last element of the currentILinkedList.- Specified by:
removeAndGetStoredLastin interfaceILinkedList<E>- Returns:
- the last element of the current
ILinkedList.
-
removeFirst
public void removeFirst()The time complexity of this implementation is O(1). Removes the first element from the currentILinkedList.- Specified by:
removeFirstin interfaceILinkedList<E>
-
removeFirstStrictly
public void removeFirstStrictly()The time complexity of this implementation is O(1). Removes the first element from the currentILinkedList.- Specified by:
removeFirstStrictlyin interfaceILinkedList<E>
-
removeFirst
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements. Removes the first element the given selector selects from the currentILinkedList- Specified by:
removeFirstin interfaceILinkedList<E>- Parameters:
selector-
-
removeFirstOccurrenceOf
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements. Removes the first occurrence of the given element from the currentILinkedList.- Specified by:
removeFirstOccurrenceOfin interfaceILinkedList<E>- Parameters:
element-
-
removeLast
public void removeLast()The time complexity of this implementation is O(n). Removes the last element from the currentILinkedList.- Specified by:
removeLastin interfaceILinkedList<E>
-
removeLastStrictly
public void removeLastStrictly()The time complexity of this implementation is O(n). Removes the last element from the currentILinkedList.- Specified by:
removeLastStrictlyin interfaceILinkedList<E>
-
removeStrictlyFirstOccurrenceOf
The time complexity of this implementation is O(n). Removes the first occurrence of the given element from the currentILinkedList.- Specified by:
removeStrictlyFirstOccurrenceOfin interfaceILinkedList<E>- Parameters:
element-
-
replaceFirst
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements. Replaces the first element the given selector selects from the currentILinkedListwith the given element.- Specified by:
replaceFirstin interfaceILinkedList<E>- Parameters:
selector-element-
-
toString
The time complexity of this implementation is O(n) if the currentLinkedListcontains n elements.
-