Class AbstractImmutableCollection<T>
java.lang.Object
org.eclipse.collections.impl.AbstractRichIterable<T>
org.eclipse.collections.impl.collection.immutable.AbstractImmutableCollection<T>
- All Implemented Interfaces:
Iterable<T>
,Collection<T>
,ImmutableCollection<T>
,InternalIterable<T>
,RichIterable<T>
- Direct Known Subclasses:
AbstractImmutableSet
public abstract class AbstractImmutableCollection<T>
extends AbstractRichIterable<T>
implements ImmutableCollection<T>, Collection<T>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
boolean
addAll
(Collection<? extends T> collection) This can be overridden in most implementations to just return this.chunk
(int size) Partitions elements in fixed size chunks.void
clear()
<V> ImmutableBag<V>
This method will count the number of occurrences of each value calculated by applying the function to each element of the collection.<V> ImmutableBag<V>
countByEach
(Function<? super T, ? extends Iterable<V>> function) This method will count the number of occurrences of each value calculated by applying the function to each element of the collection.<V,
P> ImmutableBag<V> countByWith
(Function2<? super T, ? super P, ? extends V> function, P parameter) This method will count the number of occurrences of each value calculated by applying the function to each element of the collection with the specified parameter as the second argument.<V> ImmutableMap<V,
T> groupByUniqueKey
(Function<? super T, ? extends V> function) For each element of the iterable, the function is evaluated, and the results of these evaluations are collected into a new map, where the transformed value is the key.reduce
(BinaryOperator<T> accumulator) This method produces the equivalent result asStream.reduce(BinaryOperator)
.boolean
boolean
removeAll
(Collection<?> collection) boolean
retainAll
(Collection<?> collection) stream()
<V> ImmutableObjectDoubleMap<V>
sumByDouble
(Function<? super T, ? extends V> groupBy, DoubleFunction<? super T> function) Groups and sums the values using the two specified functions.<V> ImmutableObjectDoubleMap<V>
sumByFloat
(Function<? super T, ? extends V> groupBy, FloatFunction<? super T> function) Groups and sums the values using the two specified functions.<V> ImmutableObjectLongMap<V>
sumByInt
(Function<? super T, ? extends V> groupBy, IntFunction<? super T> function) Groups and sums the values using the two specified functions.<V> ImmutableObjectLongMap<V>
sumByLong
(Function<? super T, ? extends V> groupBy, LongFunction<? super T> function) Groups and sums the values using the two specified functions.Methods inherited from class org.eclipse.collections.impl.AbstractRichIterable
allSatisfy, allSatisfyWith, anySatisfy, anySatisfyWith, appendString, appendString, asLazy, collect, collectIf, collectWith, contains, containsAll, containsAllArguments, containsAllIterable, count, countWith, detect, detectOptional, detectWith, detectWithIfNone, detectWithOptional, flatCollect, forEach, forEachWith, forEachWithIndex, groupBy, groupByEach, groupByUniqueKey, injectInto, injectInto, injectInto, injectInto, injectInto, into, isEmpty, max, max, maxBy, min, min, minBy, noneSatisfy, noneSatisfyWith, reject, rejectWith, select, selectWith, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, toArray, toArray, toBag, toBiMap, toList, toMap, toSet, toSortedBag, toSortedBag, toSortedBagBy, toSortedListBy, toSortedMap, toSortedMap, toSortedMapBy, toSortedSet, toSortedSet, toSortedSetBy, toString, zip, zipWithIndex
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
contains, containsAll, equals, hashCode, isEmpty, iterator, removeIf, size, toArray, toArray, toArray
Methods inherited from interface org.eclipse.collections.api.collection.ImmutableCollection
aggregateBy, aggregateInPlaceBy, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectIf, collectInt, collectLong, collectShort, collectWith, flatCollect, flatCollectWith, groupBy, groupByEach, newWith, newWithAll, newWithout, newWithoutAll, partition, partitionWith, reject, rejectWith, select, selectInstancesOf, selectWith, tap, zip, zipWithIndex
Methods inherited from interface org.eclipse.collections.api.InternalIterable
forEach, forEachWith, forEachWithIndex
Methods inherited from interface org.eclipse.collections.api.RichIterable
aggregateBy, allSatisfy, allSatisfyWith, anySatisfy, anySatisfyWith, appendString, appendString, appendString, asLazy, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectIf, collectInt, collectLong, collectShort, collectWith, contains, containsAll, containsAllArguments, containsAllIterable, containsAny, containsAnyIterable, containsBy, containsNone, containsNoneIterable, count, countBy, countByEach, countByWith, countWith, detect, detectIfNone, detectOptional, detectWith, detectWithIfNone, detectWithOptional, each, flatCollect, flatCollectBoolean, flatCollectByte, flatCollectChar, flatCollectDouble, flatCollectFloat, flatCollectInt, flatCollectLong, flatCollectShort, flatCollectWith, forEach, getAny, getFirst, getLast, getOnly, groupBy, groupByAndCollect, groupByEach, groupByUniqueKey, injectInto, injectInto, injectInto, injectInto, injectInto, injectIntoDouble, injectIntoFloat, injectIntoInt, injectIntoLong, into, isEmpty, makeString, makeString, makeString, makeString, max, max, maxBy, maxByOptional, maxOptional, maxOptional, min, min, minBy, minByOptional, minOptional, minOptional, noneSatisfy, noneSatisfyWith, notEmpty, reduceInPlace, reduceInPlace, reject, rejectWith, select, selectWith, size, summarizeDouble, summarizeFloat, summarizeInt, summarizeLong, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, toArray, toArray, toBag, toBiMap, toImmutableBag, toImmutableBiMap, toImmutableList, toImmutableMap, toImmutableSet, toImmutableSortedBag, toImmutableSortedBag, toImmutableSortedBagBy, toImmutableSortedList, toImmutableSortedList, toImmutableSortedListBy, toImmutableSortedSet, toImmutableSortedSet, toImmutableSortedSetBy, toList, toMap, toMap, toSet, toSortedBag, toSortedBag, toSortedBagBy, toSortedList, toSortedList, toSortedListBy, toSortedMap, toSortedMap, toSortedMapBy, toSortedSet, toSortedSet, toSortedSetBy, toString, zip, zipWithIndex
-
Constructor Details
-
AbstractImmutableCollection
public AbstractImmutableCollection()
-
-
Method Details
-
reduce
Description copied from interface:RichIterable
This method produces the equivalent result asStream.reduce(BinaryOperator)
.- Specified by:
reduce
in interfaceRichIterable<T>
-
sumByInt
public <V> ImmutableObjectLongMap<V> sumByInt(Function<? super T, ? extends V> groupBy, IntFunction<? super T> function) Description copied from interface:RichIterable
Groups and sums the values using the two specified functions.- Specified by:
sumByInt
in interfaceImmutableCollection<T>
- Specified by:
sumByInt
in interfaceRichIterable<T>
-
sumByFloat
public <V> ImmutableObjectDoubleMap<V> sumByFloat(Function<? super T, ? extends V> groupBy, FloatFunction<? super T> function) Description copied from interface:RichIterable
Groups and sums the values using the two specified functions.- Specified by:
sumByFloat
in interfaceImmutableCollection<T>
- Specified by:
sumByFloat
in interfaceRichIterable<T>
-
sumByLong
public <V> ImmutableObjectLongMap<V> sumByLong(Function<? super T, ? extends V> groupBy, LongFunction<? super T> function) Description copied from interface:RichIterable
Groups and sums the values using the two specified functions.- Specified by:
sumByLong
in interfaceImmutableCollection<T>
- Specified by:
sumByLong
in interfaceRichIterable<T>
-
sumByDouble
public <V> ImmutableObjectDoubleMap<V> sumByDouble(Function<? super T, ? extends V> groupBy, DoubleFunction<? super T> function) Description copied from interface:RichIterable
Groups and sums the values using the two specified functions.- Specified by:
sumByDouble
in interfaceImmutableCollection<T>
- Specified by:
sumByDouble
in interfaceRichIterable<T>
-
groupByUniqueKey
Description copied from interface:RichIterable
For each element of the iterable, the function is evaluated, and the results of these evaluations are collected into a new map, where the transformed value is the key. The generated keys must each be unique, or else an exception is thrown.- Specified by:
groupByUniqueKey
in interfaceImmutableCollection<T>
- Specified by:
groupByUniqueKey
in interfaceRichIterable<T>
- See Also:
-
add
- Specified by:
add
in interfaceCollection<T>
-
remove
- Specified by:
remove
in interfaceCollection<T>
-
addAll
- Specified by:
addAll
in interfaceCollection<T>
-
removeAll
- Specified by:
removeAll
in interfaceCollection<T>
-
retainAll
- Specified by:
retainAll
in interfaceCollection<T>
-
clear
public void clear()- Specified by:
clear
in interfaceCollection<T>
-
chunk
Description copied from interface:RichIterable
Partitions elements in fixed size chunks.- Specified by:
chunk
in interfaceRichIterable<T>
- Parameters:
size
- the number of elements per chunk- Returns:
- A
RichIterable
containingRichIterable
s of sizesize
, except the last will be truncated if the elements don't divide evenly.
-
countBy
Description copied from interface:RichIterable
This method will count the number of occurrences of each value calculated by applying the function to each element of the collection.- Specified by:
countBy
in interfaceImmutableCollection<T>
- Specified by:
countBy
in interfaceRichIterable<T>
- Since:
- 9.0
-
countByWith
public <V,P> ImmutableBag<V> countByWith(Function2<? super T, ? super P, ? extends V> function, P parameter) Description copied from interface:RichIterable
This method will count the number of occurrences of each value calculated by applying the function to each element of the collection with the specified parameter as the second argument.- Specified by:
countByWith
in interfaceImmutableCollection<T>
- Specified by:
countByWith
in interfaceRichIterable<T>
- Since:
- 9.0
-
countByEach
Description copied from interface:RichIterable
This method will count the number of occurrences of each value calculated by applying the function to each element of the collection.- Specified by:
countByEach
in interfaceImmutableCollection<T>
- Specified by:
countByEach
in interfaceRichIterable<T>
- Overrides:
countByEach
in classAbstractRichIterable<T>
- Since:
- 10.0.0
-
stream
- Specified by:
stream
in interfaceCollection<T>
- Specified by:
stream
in interfaceImmutableCollection<T>
- Since:
- 9.0
-
parallelStream
- Specified by:
parallelStream
in interfaceCollection<T>
- Specified by:
parallelStream
in interfaceImmutableCollection<T>
- Since:
- 9.0
-
spliterator
- Specified by:
spliterator
in interfaceCollection<T>
- Specified by:
spliterator
in interfaceImmutableCollection<T>
- Specified by:
spliterator
in interfaceIterable<T>
- Since:
- 9.0
-
castToCollection
Description copied from interface:ImmutableCollection
This can be overridden in most implementations to just return this.- Specified by:
castToCollection
in interfaceImmutableCollection<T>
- Since:
- 9.0
-