Class CommonsArrayList<ELEMENTTYPE>
java.lang.Object
java.util.AbstractCollection<ELEMENTTYPE>
java.util.AbstractList<ELEMENTTYPE>
java.util.ArrayList<ELEMENTTYPE>
com.helger.commons.collection.impl.CommonsArrayList<ELEMENTTYPE>
- Type Parameters:
ELEMENTTYPE
- List element type
- All Implemented Interfaces:
ICommonsCollection<ELEMENTTYPE>
,ICommonsIterable<ELEMENTTYPE>
,ICommonsList<ELEMENTTYPE>
,ICloneable<ICommonsList<ELEMENTTYPE>>
,IHasSize
,Serializable
,Cloneable
,Iterable<ELEMENTTYPE>
,Collection<ELEMENTTYPE>
,List<ELEMENTTYPE>
,RandomAccess
,SequencedCollection<ELEMENTTYPE>
- Direct Known Subclasses:
ErrorList
,NonBlockingStack
,URLParameterList
public class CommonsArrayList<ELEMENTTYPE>
extends ArrayList<ELEMENTTYPE>
implements ICommonsList<ELEMENTTYPE>
A special
ArrayList
implementation based on ICommonsList
.- Author:
- Philip Helger
- See Also:
-
Field Summary
Fields inherited from class java.util.AbstractList
modCount
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a new empty array list.CommonsArrayList
(int nInitialCapacity) Create a new empty array list.CommonsArrayList
(ELEMENTTYPE aValue) Create a new array list with an initial capacity of 1 and exactly the provided value, even if it isnull
.CommonsArrayList
(ELEMENTTYPE... aValues) Create a new array list that contains the same elements as the provided array.CommonsArrayList
(Iterable<? extends ELEMENTTYPE> aValues) Create a new array list with the default initial capacity and add all provided elements.CommonsArrayList
(Iterable<? extends SRCTYPE> aValues, Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list with the default initial capacity and add all mapped items of the provided iterable.CommonsArrayList
(Collection<? extends ELEMENTTYPE> aValues) Create a new array list that contains the same elements as the provided collection.CommonsArrayList
(Collection<? extends SRCTYPE> aValues, Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains the mapped elements of the provided collection.CommonsArrayList
(Enumeration<? extends ELEMENTTYPE> aValues) Create a new array list with the default initial capacity and add all provided elements.CommonsArrayList
(SRCTYPE[] aValues, Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains mapped elements of the provided array. -
Method Summary
Modifier and TypeMethodDescriptionstatic <ELEMENTTYPE>
CommonsArrayList<ELEMENTTYPE> createFiltered
(ELEMENTTYPE[] aValues, Predicate<? super ELEMENTTYPE> aFilter) static <ELEMENTTYPE>
CommonsArrayList<ELEMENTTYPE> createFiltered
(Iterable<? extends ELEMENTTYPE> aValues, Predicate<? super ELEMENTTYPE> aFilter) static <SRCTYPE,
ELEMENTTYPE>
CommonsArrayList<ELEMENTTYPE> createFiltered
(Iterable<? extends SRCTYPE> aValues, Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper, Predicate<? super ELEMENTTYPE> aFilter) Create a new array list that contains a subset of the provided iterable.static <SRCTYPE,
ELEMENTTYPE>
CommonsArrayList<ELEMENTTYPE> createFiltered
(Iterable<? extends SRCTYPE> aValues, Predicate<? super SRCTYPE> aFilter, Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains a subset of the provided iterable.static <SRCTYPE,
ELEMENTTYPE>
CommonsArrayList<ELEMENTTYPE> createFiltered
(SRCTYPE[] aValues, Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper, Predicate<? super ELEMENTTYPE> aFilter) Create a new array list that contains a subset of the provided array.static <SRCTYPE,
ELEMENTTYPE>
CommonsArrayList<ELEMENTTYPE> createFiltered
(SRCTYPE[] aValues, Predicate<? super SRCTYPE> aFilter, Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains a subset of the provided array.<T> CommonsArrayList
<T> Create a new empty list.getClone()
Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, addFirst, addLast, clear, clone, contains, ensureCapacity, equals, forEach, get, getFirst, getLast, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeFirst, removeIf, removeLast, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSize
Methods inherited from class java.util.AbstractCollection
containsAll, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
Methods inherited from interface com.helger.commons.collection.impl.ICommonsCollection
addAll, addAll, addAll, addAll, addAll, addAll, addAll, addAll, addAllMapped, addAllMapped, addAllMapped, addAllMapped, addAllMapped, addAllMapped, addIf, addIfNotNull, addObject, getAtIndex, getAtIndex, getAtIndex, getAtIndexMapped, getAtIndexMapped, getAtIndexMapped, getAtIndexMapped, getCopyAsList, getCount, getSorted, iterator2, removeAll, removeObject, set, setAll, setAll, setAllMapped, setAllMapped
Methods inherited from interface com.helger.commons.collection.impl.ICommonsIterable
containsAny, containsNone, containsOnly, findAll, findAllInstanceOf, findAllMapped, findAllMapped, findAllMapped, findFirst, findFirst, findFirstIndex, findFirstMapped, findFirstMapped, findLastIndex, forEachBreakable, forEachByIndex, forEachThrowing, getCount
Methods inherited from interface com.helger.commons.collection.impl.ICommonsList
getAll, getAllInstanceOf, getAllMapped, getAllMapped, getAsUnmodifiable, getAtIndex, getFirst, getFirst, getFirstOrNull, getLast, getLast, getLastOrNull, getSortedInline, removeAndReturnElementAtIndex, removeAtIndex, removeFirst, removeFirstOrNull, removeLast, removeLastOrNull, reverse, setFirst, setLast, swapItems
Methods inherited from interface com.helger.commons.lang.IHasSize
isEmpty, isNotEmpty, size
Methods inherited from interface java.util.List
add, add, addAll, addAll, addFirst, addLast, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, reversed, set, size, sort, spliterator, subList, toArray, toArray
-
Constructor Details
-
CommonsArrayList
public CommonsArrayList()Create a new empty array list. The default initial capacity is used. -
CommonsArrayList
Create a new empty array list.- Parameters:
nInitialCapacity
- The initial capacity for which memory is reserved. Must be > 0.
-
CommonsArrayList
Create a new array list that contains the same elements as the provided collection.- Parameters:
aValues
- The collection to copy the initial capacity and the elements from. May benull
.- See Also:
-
CommonsArrayList
Create a new array list with the default initial capacity and add all provided elements.- Parameters:
aValues
- The iterable from which the elements are copied from. May benull
.- See Also:
-
CommonsArrayList
Create a new array list with the default initial capacity and add all provided elements.- Parameters:
aValues
- The iterable from which the elements are copied from. May benull
.- See Also:
-
CommonsArrayList
public CommonsArrayList(@Nullable Collection<? extends SRCTYPE> aValues, @Nonnull Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains the mapped elements of the provided collection.- Type Parameters:
SRCTYPE
- source data type- Parameters:
aValues
- The collection to copy the initial capacity and the elements from. May benull
.aMapper
- The mapping function to be executed for all provided elements. May not benull
.- See Also:
-
CommonsArrayList
public CommonsArrayList(@Nullable Iterable<? extends SRCTYPE> aValues, @Nonnull Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list with the default initial capacity and add all mapped items of the provided iterable.- Type Parameters:
SRCTYPE
- source data type- Parameters:
aValues
- The iterable from which the elements are copied from. May benull
.aMapper
- The mapping function to be executed for all provided elements. May not benull
.- See Also:
-
CommonsArrayList
Create a new array list with an initial capacity of 1 and exactly the provided value, even if it isnull
.- Parameters:
aValue
- The value to be added. May benull
.
-
CommonsArrayList
Create a new array list that contains the same elements as the provided array.- Parameters:
aValues
- The array to copy the initial capacity and the elements from. May benull
.- See Also:
-
CommonsArrayList
public CommonsArrayList(@Nullable SRCTYPE[] aValues, @Nonnull Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains mapped elements of the provided array.- Type Parameters:
SRCTYPE
- source data type- Parameters:
aValues
- The array to copy the initial capacity and the elements from. May benull
.aMapper
- The mapping function to be executed for all provided elements. May not benull
.- See Also:
-
-
Method Details
-
createInstance
Description copied from interface:ICommonsList
Create a new empty list. Overwrite this if you don't want to useCommonsArrayList
.- Specified by:
createInstance
in interfaceICommonsList<ELEMENTTYPE>
- Type Parameters:
T
- List element type- Returns:
- A new empty list. Never
null
.
-
getClone
- Specified by:
getClone
in interfaceICloneable<ELEMENTTYPE>
- Returns:
- A 100% deep-copy of the implementing class.
-
createFiltered
@Nonnull @ReturnsMutableCopy public static <ELEMENTTYPE> CommonsArrayList<ELEMENTTYPE> createFiltered(@Nullable Iterable<? extends ELEMENTTYPE> aValues, @Nullable Predicate<? super ELEMENTTYPE> aFilter) Create a new array list that contains a subset of the provided iterable.
Note: this method is a static factory method because the compiler sometimes cannot deduce betweenPredicate
andFunction
and the mapping case occurs more often.- Type Parameters:
ELEMENTTYPE
- data type to create the list of- Parameters:
aValues
- The iterable from which the elements are copied from. May benull
.aFilter
- The filter to be applied to check if the element should be added or not.- Returns:
- The created array list. Never
null
. - See Also:
-
createFiltered
@Nonnull @ReturnsMutableCopy public static <SRCTYPE,ELEMENTTYPE> CommonsArrayList<ELEMENTTYPE> createFiltered(@Nullable Iterable<? extends SRCTYPE> aValues, @Nullable Predicate<? super SRCTYPE> aFilter, @Nonnull Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains a subset of the provided iterable. This method filters the elements before they are mapped.
Note: this method is a static factory method because the compiler sometimes cannot deduce betweenPredicate
andFunction
and the mapping case occurs more often.- Type Parameters:
SRCTYPE
- source data typeELEMENTTYPE
- final data type of the list- Parameters:
aValues
- The iterable from which the elements are copied from. May benull
.aFilter
- The filter to be applied to check if the element should be added or not.aMapper
- The mapping function to be executed for all provided elements. May not benull
.- Returns:
- The created array list. Never
null
. - See Also:
-
createFiltered
@Nonnull @ReturnsMutableCopy public static <SRCTYPE,ELEMENTTYPE> CommonsArrayList<ELEMENTTYPE> createFiltered(@Nullable Iterable<? extends SRCTYPE> aValues, @Nonnull Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper, @Nullable Predicate<? super ELEMENTTYPE> aFilter) Create a new array list that contains a subset of the provided iterable. This method maps the elements before they are filtered.
Note: this method is a static factory method because the compiler sometimes cannot deduce betweenPredicate
andFunction
and the mapping case occurs more often.- Type Parameters:
SRCTYPE
- source data typeELEMENTTYPE
- final data type of the list- Parameters:
aValues
- The iterable from which the elements are copied from. May benull
.aMapper
- The mapping function to be executed for all provided elements. May not benull
.aFilter
- The filter to be applied on the mapped element to check if the element should be added or not.- Returns:
- The created array list. Never
null
. - Since:
- 9.1.3
- See Also:
-
createFiltered
@Nonnull @ReturnsMutableCopy public static <ELEMENTTYPE> CommonsArrayList<ELEMENTTYPE> createFiltered(@Nullable ELEMENTTYPE[] aValues, @Nullable Predicate<? super ELEMENTTYPE> aFilter) Create a new array list that contains a subset of the provided array.
Note: this method is a static factory method because the compiler sometimes cannot deduce betweenPredicate
andFunction
and the mapping case occurs more often.- Type Parameters:
ELEMENTTYPE
- data type of the list- Parameters:
aValues
- The array from which the elements are copied from. May benull
.aFilter
- The filter to be applied to check if the element should be added or not.- Returns:
- The created array list. Never
null
. - See Also:
-
createFiltered
@Nonnull @ReturnsMutableCopy public static <SRCTYPE,ELEMENTTYPE> CommonsArrayList<ELEMENTTYPE> createFiltered(@Nullable SRCTYPE[] aValues, @Nullable Predicate<? super SRCTYPE> aFilter, @Nonnull Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper) Create a new array list that contains a subset of the provided array. This method filters the elements before they are mapped.
Note: this method is a static factory method because the compiler sometimes cannot deduce betweenPredicate
andFunction
and the mapping case occurs more often.- Type Parameters:
SRCTYPE
- source data typeELEMENTTYPE
- final data type of the list- Parameters:
aValues
- The array from which the elements are copied from. May benull
.aFilter
- The filter to be applied to check if the element should be added or not.aMapper
- The mapping function to be executed for all provided elements. May not benull
.- Returns:
- The created array list. Never
null
. - See Also:
-
createFiltered
@Nonnull @ReturnsMutableCopy public static <SRCTYPE,ELEMENTTYPE> CommonsArrayList<ELEMENTTYPE> createFiltered(@Nullable SRCTYPE[] aValues, @Nonnull Function<? super SRCTYPE, ? extends ELEMENTTYPE> aMapper, @Nullable Predicate<? super ELEMENTTYPE> aFilter) Create a new array list that contains a subset of the provided array. This method maps the elements before they are filtered.
Note: this method is a static factory method because the compiler sometimes cannot deduce betweenPredicate
andFunction
and the mapping case occurs more often.- Type Parameters:
SRCTYPE
- source data typeELEMENTTYPE
- final data type of the list- Parameters:
aValues
- The array from which the elements are copied from. May benull
.aMapper
- The mapping function to be executed for all provided elements. May not benull
.aFilter
- The filter to be applied on the mapped element to check if the element should be added or not.- Returns:
- The created array list. Never
null
. - Since:
- 9.1.3
- See Also:
-