public class CharArrayList extends AbstractCharList implements ICharArray, CharStack
This implementation is optimized to improve how data is processed with interfaces like ICharArray, CharStack
and with optimized functions that use type-specific implementations for primitives and optimized logic for bulkactions.
| Constructor and Description |
|---|
CharArrayList()
Creates a new ArrayList with a Empty array.
|
CharArrayList(char[] a)
Creates a new ArrayList with a Copy of the array
|
CharArrayList(char[] a,
int length)
Creates a new ArrayList with a Copy of the array with a custom length
|
CharArrayList(char[] a,
int offset,
int length)
Creates a new ArrayList with a Copy of the array with in the custom range.
|
CharArrayList(CharCollection c)
Creates a new ArrayList a copy with the contents of the Collection.
|
CharArrayList(CharList l)
Creates a new ArrayList a copy with the contents of the List.
|
CharArrayList(java.util.Collection<? extends java.lang.Character> c)
Creates a new ArrayList a copy with the contents of the Collection.
|
CharArrayList(int size)
Creates a new ArrayList with the specific requested size
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(char e)
Appends the specified element to the end of this list.
|
void |
add(int index,
char e)
Appends the specified element to the index of the list
|
boolean |
addAll(int index,
CharCollection c)
Appends the specified elements to the index of the list.
|
boolean |
addAll(int index,
CharList c)
Appends the specified elements to the index of the list.
|
boolean |
addAll(int index,
java.util.Collection<? extends java.lang.Character> c)
Deprecated.
|
void |
addElements(int from,
char[] a,
int offset,
int length)
Appends the specified array elements to the index of the list.
|
void |
clear()
A function to clear all elements in the list.
|
void |
clearAndTrim(int size)
Trims the collection down to the requested size and clears all elements while doing so
|
boolean |
contains(char e)
A Type Specific implementation of the Collection#contains function.
|
boolean |
contains(java.lang.Object o)
Deprecated.
if type-specific but still supported because of special edgecase Object-Comparason features
|
char[] |
elements()
Provides the Underlying Array in the Implementation
|
void |
ensureCapacity(int size)
Increases the capacity of this implementation instance, if necessary,
to ensure that it can hold at least the number of elements specified by
the minimum capacity argument.
|
char[] |
extractElements(int from,
int to)
A function to fast extract elements out of the list, this removes the elements that were fetched.
|
void |
forEach(CharConsumer action)
A Type Specific foreach function that reduces (un)boxing
|
char |
getChar(int index)
A Type-Specific get function to reduce (un)boxing
|
char[] |
getElements(int from,
char[] a,
int offset,
int length)
A function to fast fetch elements from the list
|
int |
indexOf(char e)
A Type-Specific function to find the index of a given element
|
int |
indexOf(java.lang.Object o)
Deprecated.
if type-specific but still supported because of special edgecase Object-Comparason features
|
int |
lastIndexOf(char e)
A Type-Specific function to find the last index of a given element
|
int |
lastIndexOf(java.lang.Object o)
Deprecated.
if type-specific but still supported because of special edgecase Object-Comparason features
|
char |
peekChar(int index)
Provides the Selected Object from the stack.
|
char |
popChar()
A Type-Specific pop function to reduce (un)boxing
|
java.util.stream.IntStream |
primitiveStream()
Returns a Java-Type-Specific Stream to reduce boxing/unboxing.
|
void |
pushChar(char e)
Appends the specified element to the end of this Stack.
|
boolean |
remChar(char type)
A Type-Specific implementation of remove.
|
boolean |
remIf(java.util.function.IntPredicate filter)
A optimized List#removeIf(Predicate) that more quickly removes elements from the list then the ArrayList implementation
|
boolean |
removeAll(CharCollection c)
A function to remove all elements that were provided in the other collection
|
boolean |
removeAll(java.util.Collection<?> c)
Deprecated.
if the collection is type-specific
|
char |
removeChar(int index)
A Type-Specific remove function to reduce (un)boxing
|
void |
removeElements(int from,
int to)
a function to fast remove elements from the list.
|
boolean |
removeIf(java.util.function.Predicate<? super java.lang.Character> filter)
Deprecated.
if Type-Specific, use #remIf instead
|
void |
replaceAll(java.util.function.UnaryOperator<java.lang.Character> o)
Deprecated.
|
void |
replaceChars(java.util.function.IntUnaryOperator o)
A Type-Specific replace function to reduce (un)boxing
|
boolean |
retainAll(CharCollection c)
A function to retain all elements that were provided in the other collection
This function might delegate to a more appropriate function if necessary
|
boolean |
retainAll(java.util.Collection<?> c)
Deprecated.
if the collection is type-specific
|
char |
set(int index,
char e)
A Type-Specific set function to reduce (un)boxing
|
int |
size()
A function to return the size of the list
|
void |
size(int size)
A function to ensure the elements are within the requested size.
|
void |
sort(CharComparator c)
Sorts the elements specified by the Natural order either by using the Comparator or the elements
|
CharSplititerator |
spliterator()
A Type Specific Type Splititerator to reduce boxing/unboxing
|
java.lang.Object[] |
toArray()
Deprecated.
|
<E> E[] |
toArray(E[] a)
Deprecated.
|
char[] |
toCharArray(char[] a)
A Type-Specific implementation of toArray.
|
boolean |
trim(int size)
Trims the original collection down to the size of the current elements or the requested size depending which is bigger
|
void |
unstableSort(CharComparator c)
Sorts the elements specified by the Natural order either by using the Comparator or the elements using a unstable sort
|
static CharArrayList |
wrap(char... a)
Creates a wrapped arraylist that uses the array as backing array
|
static CharArrayList |
wrap(char[] a,
int length)
Creates a wrapped arraylist that uses the array as backing array and a custom fill size
|
add, addAll, addAll, equals, hashCode, iterator, listIterator, listIterator, subListadd, addAll, containsAll, containsAny, containsAny, remove, toCharArrayelementsclearAndTrim, trimpeek, pop, push, top, topCharadd, addElements, addElements, get, getElements, remove, remove, set, sort, unstableSortcontainsAll, containsAny, containsAny, parallelPrimitiveStream, toCharArrayforEachpublic CharArrayList()
public CharArrayList(int size)
size - the minimum initial size of the Backing arraypublic CharArrayList(java.util.Collection<? extends java.lang.Character> c)
c - the elements that should be added into the listpublic CharArrayList(CharCollection c)
c - the elements that should be added into the listpublic CharArrayList(CharList l)
l - the elements that should be added into the listpublic CharArrayList(char[] a)
a - the array that should be copiedpublic CharArrayList(char[] a,
int length)
a - the array that should be copiedlength - the desired length that should be copiedpublic CharArrayList(char[] a,
int offset,
int length)
a - the array that should be copiedoffset - the starting offset of where the array should be copied fromlength - the desired length that should be copiedjava.lang.IllegalStateException - if offset is smaller then 0java.lang.IllegalStateException - if the offset + length exceeds the array lengthpublic static CharArrayList wrap(char... a)
a - elements that should be wrappedpublic static CharArrayList wrap(char[] a, int length)
a - elements that should be wrappedlength - the size of the elements within the arraypublic boolean add(char e)
add in interface CharCollectionadd in interface CharListadd in class AbstractCharListe - element to be appended to this listCollection.add(E))List.add(Object)public void pushChar(char e)
pushChar in interface CharStacke - element to be appended to this StackStack.push(Object)public void add(int index,
char e)
@Deprecated
public boolean addAll(int index,
java.util.Collection<? extends java.lang.Character> c)
addAll in interface java.util.List<java.lang.Character>index - the index where to append the elements toc - the elements to append to the listjava.lang.IndexOutOfBoundsException - if index is outside of the lists rangepublic boolean addAll(int index,
CharCollection c)
addAll in interface CharListindex - the index where to append the elements toc - the elements to append to the listjava.lang.IndexOutOfBoundsException - if index is outside of the lists rangeList.addAll(int, java.util.Collection)public boolean addAll(int index,
CharList c)
public void addElements(int from,
char[] a,
int offset,
int length)
addElements in interface CharListfrom - the index where to append the elements toa - the elements to append to the listoffset - where to start ino the arraylength - the amount of elements to insertjava.lang.IndexOutOfBoundsException - if index is outside of the lists rangepublic char[] getElements(int from,
char[] a,
int offset,
int length)
getElements in interface CharListfrom - index where the list should be fetching elements froma - the array where the values should be inserted tooffset - the startIndex of where the array should be written tolength - the number of elements the values should be fetched fromjava.lang.NullPointerException - if the array is nulljava.lang.IndexOutOfBoundsException - if from is outside of the lists rangejava.lang.IllegalStateException - if offset or length are smaller then 0 or exceed the array lengthpublic void removeElements(int from,
int to)
removeElements in interface CharListfrom - the start index of where the elements should be removed from (inclusive)to - the end index of where the elements should be removed to (exclusive)public char[] extractElements(int from,
int to)
extractElements in interface CharListfrom - the start index of where the elements should be fetched from (inclusive)to - the end index of where the elements should be fetched to (exclusive)@Deprecated public boolean contains(java.lang.Object o)
contains in interface java.util.Collection<java.lang.Character>contains in interface java.util.List<java.lang.Character>contains in interface CharCollectioncontains in interface CharListcontains in class AbstractCharCollectiono - the element that is searched for@Deprecated public int indexOf(java.lang.Object o)
indexOf in interface java.util.List<java.lang.Character>indexOf in interface CharListindexOf in class AbstractCharListo - the element that is searched for@Deprecated public int lastIndexOf(java.lang.Object o)
lastIndexOf in interface java.util.List<java.lang.Character>lastIndexOf in interface CharListlastIndexOf in class AbstractCharListo - the element that is searched forpublic boolean contains(char e)
contains in interface CharCollectioncontains in class AbstractCharCollectione - the element that is searched for.public int indexOf(char e)
indexOf in interface CharListindexOf in class AbstractCharListe - the element that is searched forpublic int lastIndexOf(char e)
lastIndexOf in interface CharListlastIndexOf in class AbstractCharListe - the element that is searched forpublic void sort(CharComparator c)
sort in interface CharListc - the sorter of the elements, can be nullList.sort(java.util.Comparator),
CharArrays.stableSort(char[], CharComparator)public void unstableSort(CharComparator c)
unstableSort in interface CharListc - the sorter of the elements, can be nullList.sort(java.util.Comparator),
CharArrays.unstableSort(char[], CharComparator)public char getChar(int index)
public char peekChar(int index)
peekChar in interface CharStackindex - of the element that should be providedjava.lang.ArrayIndexOutOfBoundsException - if the index is out of boundsStack.peek(int)public char[] elements()
elements in interface ICharArrayjava.lang.ClassCastException - if the return type does not match the underlying array. (Only for Object Implementations)public void forEach(CharConsumer action)
forEach in interface CharIterableaction - The action to be performed for each elementjava.lang.NullPointerException - if the specified action is nullIterable.forEach(java.util.function.Consumer)The default implementation behaves as if:
for(int i = 0;i<size;i++)
action.accept(data[i]);
public char set(int index,
char e)
@Deprecated public void replaceAll(java.util.function.UnaryOperator<java.lang.Character> o)
replaceAll in interface java.util.List<java.lang.Character>replaceAll in interface CharListo - the action to replace the valuesjava.lang.NullPointerException - if o is nullpublic void replaceChars(java.util.function.IntUnaryOperator o)
replaceChars in interface CharListo - the action to replace the valuesjava.lang.NullPointerException - if o is nullpublic char removeChar(int index)
removeChar in interface CharListindex - the index of the element to fetchjava.lang.IndexOutOfBoundsException - if the index is out of rangeList.remove(int)public boolean remChar(char type)
remChar in interface CharCollectionremChar in class AbstractCharCollectiontype - the element that is searched forCollection.remove(Object)public char popChar()
popChar in interface CharStackjava.lang.IndexOutOfBoundsException - if the index is out of rangeStack.pop()@Deprecated public boolean removeAll(java.util.Collection<?> c)
removeAll in interface java.util.Collection<java.lang.Character>removeAll in interface java.util.List<java.lang.Character>removeAll in class java.util.AbstractCollection<java.lang.Character>c - the elements that should be removedjava.lang.NullPointerException - if the collection is null@Deprecated public boolean retainAll(java.util.Collection<?> c)
retainAll in interface java.util.Collection<java.lang.Character>retainAll in interface java.util.List<java.lang.Character>retainAll in class java.util.AbstractCollection<java.lang.Character>c - the elements that should be kept. If empty, CharArrayList#clear is called.java.lang.NullPointerException - if the collection is null@Deprecated public boolean removeIf(java.util.function.Predicate<? super java.lang.Character> filter)
removeIf in interface java.util.Collection<java.lang.Character>removeIf in interface CharCollectionfilter - the filter to remove elementspublic boolean removeAll(CharCollection c)
removeAll in interface CharCollectionremoveAll in class AbstractCharCollectionc - the elements that should be removedjava.lang.NullPointerException - if the collection is nullCollection.removeAll(Collection)public boolean retainAll(CharCollection c)
retainAll in interface CharCollectionretainAll in class AbstractCharCollectionc - the elements that should be kept. If empty, CharArrayList#clear is called.java.lang.NullPointerException - if the collection is nullCollection.retainAll(Collection)public boolean remIf(java.util.function.IntPredicate filter)
remIf in interface CharCollectionfilter - the filter to remove elementsCollection.removeIf(Predicate)@Deprecated public java.lang.Object[] toArray()
toArray in interface java.util.Collection<java.lang.Character>toArray in interface java.util.List<java.lang.Character>toArray in class java.util.AbstractCollection<java.lang.Character>@Deprecated public <E> E[] toArray(E[] a)
toArray in interface java.util.Collection<java.lang.Character>toArray in interface java.util.List<java.lang.Character>toArray in class java.util.AbstractCollection<java.lang.Character>a - original array. If null a Object array with the right size is created. If to small the Array of the same type is created with the right sizepublic char[] toCharArray(char[] a)
AbstractCharCollectiontoCharArray in interface CharCollectiontoCharArray in class AbstractCharCollectiona - array that the elements should be injected to. If null or to small a new array with the right size is createdCollection.toArray(Object[])public int size()
size in interface java.util.Collection<java.lang.Character>size in interface java.util.List<java.lang.Character>size in interface Stack<java.lang.Character>size in class java.util.AbstractCollection<java.lang.Character>public void size(int size)
size in interface CharListsize in class AbstractCharListsize - the requested amount of elements/room for elementspublic void clear()
public boolean trim(int size)
trim in interface ITrimmablesize - the requested trim size.public void clearAndTrim(int size)
clearAndTrim in interface ITrimmablesize - the amount of elements that should be allowedpublic void ensureCapacity(int size)
ensureCapacity in interface IArraysize - the desired minimum capacitypublic java.util.stream.IntStream primitiveStream()
primitiveStream in interface CharCollectionpublic CharSplititerator spliterator()
spliterator in interface java.lang.Iterable<java.lang.Character>spliterator in interface java.util.Collection<java.lang.Character>spliterator in interface java.util.List<java.lang.Character>spliterator in interface CharCollectionspliterator in interface CharIterablespliterator in interface CharList