Class AbstractImmutableSet<T>
- java.lang.Object
-
- org.eclipse.collections.impl.AbstractRichIterable<T>
-
- org.eclipse.collections.impl.collection.immutable.AbstractImmutableCollection<T>
-
- org.eclipse.collections.impl.set.immutable.AbstractImmutableSet<T>
-
- All Implemented Interfaces:
java.lang.Iterable<T>,java.util.Collection<T>,java.util.Set<T>,ImmutableCollection<T>,InternalIterable<T>,RichIterable<T>,ImmutableSet<T>,ImmutableSetIterable<T>,SetIterable<T>,UnsortedSetIterable<T>
- Direct Known Subclasses:
ImmutableDoubletonSet,ImmutableEmptySet,ImmutableEmptySetWithHashingStrategy,ImmutableQuadrupletonSet,ImmutableSingletonSet,ImmutableTripletonSet,ImmutableUnifiedSet,ImmutableUnifiedSetWithHashingStrategy
public abstract class AbstractImmutableSet<T> extends AbstractImmutableCollection<T> implements ImmutableSet<T>, java.util.Set<T>
This class is the parent class for all ImmutableSets. All implementations of ImmutableSet must implement the Set interface so anArraySet.equals(anImmutableSet) can return true when the contents and order are the same.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classAbstractImmutableSet.ImmutableSetIterator
-
Constructor Summary
Constructors Constructor Description AbstractImmutableSet()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description ParallelUnsortedSetIterable<T>asParallel(java.util.concurrent.ExecutorService executorService, int batchSize)Returns a parallel iterable of this SetIterable.<B> LazyIterable<Pair<T,B>>cartesianProduct(SetIterable<B> set)Returns the set whose members are all possible ordered pairs (a, b) where a is a member ofthisand b is a member ofset.java.util.Set<T>castToSet()<V> ImmutableSet<V>collect(Function<? super T,? extends V> function)Returns a new collection with the results of applying the specified function on each element of the source collection.ImmutableBooleanSetcollectBoolean(BooleanFunction<? super T> booleanFunction)Returns a new primitivebooleaniterable with the results of applying the specified function on each element of the source collection.ImmutableByteSetcollectByte(ByteFunction<? super T> byteFunction)Returns a new primitivebyteiterable with the results of applying the specified function on each element of the source collection.ImmutableCharSetcollectChar(CharFunction<? super T> charFunction)Returns a new primitivechariterable with the results of applying the specified function on each element of the source collection.ImmutableDoubleSetcollectDouble(DoubleFunction<? super T> doubleFunction)Returns a new primitivedoubleiterable with the results of applying the specified function on each element of the source collection.ImmutableFloatSetcollectFloat(FloatFunction<? super T> floatFunction)Returns a new primitivefloatiterable with the results of applying the specified function on each element of the source collection.<V> ImmutableSet<V>collectIf(Predicate<? super T> predicate, Function<? super T,? extends V> function)Returns a new collection with the results of applying the specified function on each element of the source collection, but only for those elements which return true upon evaluation of the predicate.ImmutableIntSetcollectInt(IntFunction<? super T> intFunction)Returns a new primitiveintiterable with the results of applying the specified function on each element of the source collection.ImmutableLongSetcollectLong(LongFunction<? super T> longFunction)Returns a new primitivelongiterable with the results of applying the specified function on each element of the source collection.ImmutableShortSetcollectShort(ShortFunction<? super T> shortFunction)Returns a new primitiveshortiterable with the results of applying the specified function on each element of the source collection.<P,V>
ImmutableSet<V>collectWith(Function2<? super T,? super P,? extends V> function, P parameter)Same asRichIterable.collect(Function)with aFunction2and specified parameter which is passed to the block.ImmutableSet<T>difference(SetIterable<? extends T> subtrahendSet)Returns the set of all members ofthisthat are not members ofsubtrahendSet.<R extends java.util.Set<T>>
RdifferenceInto(SetIterable<? extends T> subtrahendSet, R targetSet)Same asSetIterable.difference(SetIterable)but adds all the objects totargetSetand returns it.<V> ImmutableSet<V>flatCollect(Function<? super T,? extends java.lang.Iterable<V>> function)flatCollectis a special case ofRichIterable.collect(Function).<V> ImmutableSetMultimap<V,T>groupBy(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 multimap, where the transformed value is the key and the original values are added to the same (or similar) species of collection as the source iterable.<V,R extends MutableMultimap<V,T>>
RgroupBy(Function<? super T,? extends V> function, R target)Same asRichIterable.groupBy(Function), except that the results are gathered into the specifiedtargetmultimap.<V> ImmutableSetMultimap<V,T>groupByEach(Function<? super T,? extends java.lang.Iterable<V>> function)Similar toRichIterable.groupBy(Function), except the result of evaluating function will return a collection of keys for each value.<V,R extends MutableMultimap<V,T>>
RgroupByEach(Function<? super T,? extends java.lang.Iterable<V>> function, R target)Same asRichIterable.groupByEach(Function), except that the results are gathered into the specifiedtargetmultimap.ImmutableSet<T>intersect(SetIterable<? extends T> set)Returns the set of all objects that are members of boththisandset.<R extends java.util.Set<T>>
RintersectInto(SetIterable<? extends T> set, R targetSet)Same asSetIterable.intersect(SetIterable)but adds all the objects totargetSetand returns it.booleanisProperSubsetOf(SetIterable<? extends T> candidateSuperset)Returns true if all the members ofthisare also members ofcandidateSupersetand the two sets are not equal.booleanisSubsetOf(SetIterable<? extends T> candidateSuperset)Returns true if all the members ofthisare also members ofcandidateSuperset.protected MutableCollection<T>newMutable(int size)ImmutableSet<T>newWith(T element)This method is similar to thewithmethod inMutableCollectionwith the difference that a new copy of this collection with the element appended will be returned.ImmutableSet<T>newWithAll(java.lang.Iterable<? extends T> elements)This method is similar to thewithAllmethod inMutableCollectionwith the difference that a new copy of this collection with the elements appended will be returned.ImmutableSet<T>newWithout(T element)This method is similar to thewithoutmethod inMutableCollectionwith the difference that a new copy of this collection with the element removed will be returned.ImmutableSet<T>newWithoutAll(java.lang.Iterable<? extends T> elements)This method is similar to thewithoutAllmethod inMutableCollectionwith the difference that a new copy of this collection with the elements removed will be returned.protected intnullSafeHashCode(java.lang.Object element)PartitionImmutableSet<T>partition(Predicate<? super T> predicate)Filters a collection into a PartitionedIterable based on the evaluation of the predicate.<P> PartitionImmutableSet<T>partitionWith(Predicate2<? super T,? super P> predicate, P parameter)Filters a collection into a PartitionIterable based on the evaluation of the predicate.ImmutableSet<UnsortedSetIterable<T>>powerSet()Returns the set whose members are all possible subsets ofthis.ImmutableSet<T>reject(Predicate<? super T> predicate)Returns all elements of the source collection that return false when evaluating of the predicate.<P> ImmutableSet<T>rejectWith(Predicate2<? super T,? super P> predicate, P parameter)Similar toRichIterable.reject(Predicate), except with an evaluation parameter for the second generic argument inPredicate2.ImmutableSet<T>select(Predicate<? super T> predicate)Returns all elements of the source collection that return true when evaluating the predicate.<S> ImmutableSet<S>selectInstancesOf(java.lang.Class<S> clazz)Returns all elements of the source collection that are instances of the Classclazz.<P> ImmutableSet<T>selectWith(Predicate2<? super T,? super P> predicate, P parameter)Similar toRichIterable.select(Predicate), except with an evaluation parameter for the second generic argument inPredicate2.ImmutableSet<T>symmetricDifference(SetIterable<? extends T> setB)Returns the set of all objects that are a member of exactly one ofthisandsetB(elements which are in one of the sets, but not in both).<R extends java.util.Set<T>>
RsymmetricDifferenceInto(SetIterable<? extends T> set, R targetSet)Same asSetIterable.symmetricDifference(SetIterable)but adds all the objects totargetSetand returns it.ImmutableSet<T>tap(Procedure<? super T> procedure)Executes the Procedure for each element in the iterable and returnsthis.ImmutableSet<T>toImmutable()Converts the UnsortedSetIterable to an immutable implementation.ImmutableSet<T>union(SetIterable<? extends T> set)Returns the set of all objects that are a member ofthisorsetor both.<R extends java.util.Set<T>>
RunionInto(SetIterable<? extends T> set, R targetSet)Same asSetIterable.union(SetIterable)but adds all the objects totargetSetand returns it.<S> ImmutableSet<Pair<T,S>>zip(java.lang.Iterable<S> that)Deprecated.in 6.0.ImmutableSet<Pair<T,java.lang.Integer>>zipWithIndex()Deprecated.in 6.0.-
Methods inherited from class org.eclipse.collections.impl.collection.immutable.AbstractImmutableCollection
add, addAll, castToCollection, chunk, clear, countBy, countByEach, countByWith, groupByUniqueKey, parallelStream, reduce, remove, removeAll, removeAllFrom, retainAll, spliterator, stream, sumByDouble, sumByFloat, sumByInt, sumByLong, toArray, toArray
-
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, groupByUniqueKey, injectInto, injectInto, injectInto, injectInto, injectInto, into, isEmpty, max, max, maxBy, min, min, minBy, noneSatisfy, noneSatisfyWith, reject, rejectWith, select, selectWith, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, 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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.collections.api.collection.ImmutableCollection
aggregateBy, aggregateInPlaceBy, castToCollection, countBy, countByEach, countByWith, flatCollectWith, groupByUniqueKey, parallelStream, reduceBy, spliterator, stream, sumByDouble, sumByFloat, sumByInt, sumByLong
-
Methods inherited from interface org.eclipse.collections.api.set.ImmutableSet
flatCollectWith, toImmutableSet
-
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, chunk, 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, groupByAndCollect, 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, reduce, reduceBy, reduceInPlace, reduceInPlace, reject, rejectWith, select, selectWith, size, summarizeDouble, summarizeFloat, summarizeInt, summarizeLong, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, toArray, toArray, toBag, toBiMap, toImmutableBag, toImmutableBiMap, toImmutableList, toImmutableMap, 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
-
Methods inherited from interface java.util.Set
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, spliterator, toArray, toArray
-
Methods inherited from interface org.eclipse.collections.api.set.SetIterable
equals, hashCode
-
-
-
-
Method Detail
-
castToSet
public java.util.Set<T> castToSet()
- Specified by:
castToSetin interfaceImmutableSet<T>
-
nullSafeHashCode
protected int nullSafeHashCode(java.lang.Object element)
-
newWith
public ImmutableSet<T> newWith(T element)
Description copied from interface:ImmutableCollectionThis method is similar to thewithmethod inMutableCollectionwith the difference that a new copy of this collection with the element appended will be returned.- Specified by:
newWithin interfaceImmutableCollection<T>- Specified by:
newWithin interfaceImmutableSet<T>
-
newWithout
public ImmutableSet<T> newWithout(T element)
Description copied from interface:ImmutableCollectionThis method is similar to thewithoutmethod inMutableCollectionwith the difference that a new copy of this collection with the element removed will be returned.- Specified by:
newWithoutin interfaceImmutableCollection<T>- Specified by:
newWithoutin interfaceImmutableSet<T>
-
newWithAll
public ImmutableSet<T> newWithAll(java.lang.Iterable<? extends T> elements)
Description copied from interface:ImmutableCollectionThis method is similar to thewithAllmethod inMutableCollectionwith the difference that a new copy of this collection with the elements appended will be returned.- Specified by:
newWithAllin interfaceImmutableCollection<T>- Specified by:
newWithAllin interfaceImmutableSet<T>
-
newWithoutAll
public ImmutableSet<T> newWithoutAll(java.lang.Iterable<? extends T> elements)
Description copied from interface:ImmutableCollectionThis method is similar to thewithoutAllmethod inMutableCollectionwith the difference that a new copy of this collection with the elements removed will be returned.- Specified by:
newWithoutAllin interfaceImmutableCollection<T>- Specified by:
newWithoutAllin interfaceImmutableSet<T>
-
tap
public ImmutableSet<T> tap(Procedure<? super T> procedure)
Description copied from interface:RichIterableExecutes the Procedure for each element in the iterable and returnsthis.Example using a Java 8 lambda expression:
RichIterable<Person> tapped = people.tap(person -> LOGGER.info(person.getName()));- Specified by:
tapin interfaceImmutableCollection<T>- Specified by:
tapin interfaceImmutableSet<T>- Specified by:
tapin interfaceImmutableSetIterable<T>- Specified by:
tapin interfaceRichIterable<T>- Specified by:
tapin interfaceSetIterable<T>- Specified by:
tapin interfaceUnsortedSetIterable<T>- See Also:
RichIterable.each(Procedure),RichIterable.forEach(Procedure)
-
select
public ImmutableSet<T> select(Predicate<? super T> predicate)
Description copied from interface:RichIterableReturns all elements of the source collection that return true when evaluating the predicate. This method is also commonly called filter.Example using a Java 8 lambda expression:
RichIterable<Person> selected = people.select(person -> person.getAddress().getCity().equals("London"));- Specified by:
selectin interfaceImmutableCollection<T>- Specified by:
selectin interfaceImmutableSet<T>- Specified by:
selectin interfaceImmutableSetIterable<T>- Specified by:
selectin interfaceRichIterable<T>- Specified by:
selectin interfaceSetIterable<T>- Specified by:
selectin interfaceUnsortedSetIterable<T>
-
selectWith
public <P> ImmutableSet<T> selectWith(Predicate2<? super T,? super P> predicate, P parameter)
Description copied from interface:RichIterableSimilar toRichIterable.select(Predicate), except with an evaluation parameter for the second generic argument inPredicate2.E.g. return a
Collectionof Person elements where the person has an age greater than or equal to 18 yearsExample using a Java 8 lambda expression:
RichIterable<Person> selected = people.selectWith((Person person, Integer age) -> person.getAge()>= age, Integer.valueOf(18));- Specified by:
selectWithin interfaceImmutableCollection<T>- Specified by:
selectWithin interfaceImmutableSet<T>- Specified by:
selectWithin interfaceImmutableSetIterable<T>- Specified by:
selectWithin interfaceRichIterable<T>- Specified by:
selectWithin interfaceSetIterable<T>- Specified by:
selectWithin interfaceUnsortedSetIterable<T>- Parameters:
predicate- aPredicate2to use as the select criteriaparameter- a parameter to pass in for evaluation of the second argumentPinpredicate- See Also:
RichIterable.select(Predicate)
-
reject
public ImmutableSet<T> reject(Predicate<? super T> predicate)
Description copied from interface:RichIterableReturns all elements of the source collection that return false when evaluating of the predicate. This method is also sometimes called filterNot and is the equivalent of calling iterable.select(Predicates.not(predicate)).Example using a Java 8 lambda expression:
RichIterable<Person> rejected = people.reject(person -> person.person.getLastName().equals("Smith"));- Specified by:
rejectin interfaceImmutableCollection<T>- Specified by:
rejectin interfaceImmutableSet<T>- Specified by:
rejectin interfaceImmutableSetIterable<T>- Specified by:
rejectin interfaceRichIterable<T>- Specified by:
rejectin interfaceSetIterable<T>- Specified by:
rejectin interfaceUnsortedSetIterable<T>- Parameters:
predicate- aPredicateto use as the reject criteria- Returns:
- a RichIterable that contains elements that cause
Predicate.accept(Object)method to evaluate to false
-
rejectWith
public <P> ImmutableSet<T> rejectWith(Predicate2<? super T,? super P> predicate, P parameter)
Description copied from interface:RichIterableSimilar toRichIterable.reject(Predicate), except with an evaluation parameter for the second generic argument inPredicate2.E.g. return a
Collectionof Person elements where the person has an age greater than or equal to 18 yearsExample using a Java 8 lambda expression:
RichIterable<Person> rejected = people.rejectWith((Person person, Integer age) -> person.getAge() < age, Integer.valueOf(18));- Specified by:
rejectWithin interfaceImmutableCollection<T>- Specified by:
rejectWithin interfaceImmutableSet<T>- Specified by:
rejectWithin interfaceImmutableSetIterable<T>- Specified by:
rejectWithin interfaceRichIterable<T>- Specified by:
rejectWithin interfaceSetIterable<T>- Specified by:
rejectWithin interfaceUnsortedSetIterable<T>- Parameters:
predicate- aPredicate2to use as the select criteriaparameter- a parameter to pass in for evaluation of the second argumentPinpredicate- See Also:
RichIterable.select(Predicate)
-
partition
public PartitionImmutableSet<T> partition(Predicate<? super T> predicate)
Description copied from interface:RichIterableFilters a collection into a PartitionedIterable based on the evaluation of the predicate.Example using a Java 8 lambda expression:
PartitionIterable<Person> newYorkersAndNonNewYorkers = people.partition(person -> person.getAddress().getState().getName().equals("New York"));- Specified by:
partitionin interfaceImmutableCollection<T>- Specified by:
partitionin interfaceImmutableSet<T>- Specified by:
partitionin interfaceImmutableSetIterable<T>- Specified by:
partitionin interfaceRichIterable<T>- Specified by:
partitionin interfaceSetIterable<T>
-
partitionWith
public <P> PartitionImmutableSet<T> partitionWith(Predicate2<? super T,? super P> predicate, P parameter)
Description copied from interface:RichIterableFilters a collection into a PartitionIterable based on the evaluation of the predicate.Example using a Java 8 lambda expression:
PartitionIterable<Person> newYorkersAndNonNewYorkers = people.partitionWith((Person person, String state) -> person.getAddress().getState().getName().equals(state), "New York");- Specified by:
partitionWithin interfaceImmutableCollection<T>- Specified by:
partitionWithin interfaceImmutableSet<T>- Specified by:
partitionWithin interfaceImmutableSetIterable<T>- Specified by:
partitionWithin interfaceRichIterable<T>- Specified by:
partitionWithin interfaceSetIterable<T>
-
selectInstancesOf
public <S> ImmutableSet<S> selectInstancesOf(java.lang.Class<S> clazz)
Description copied from interface:RichIterableReturns all elements of the source collection that are instances of the Classclazz.RichIterable<Integer> integers = List.mutable.with(new Integer(0), new Long(0L), new Double(0.0)).selectInstancesOf(Integer.class);- Specified by:
selectInstancesOfin interfaceImmutableCollection<T>- Specified by:
selectInstancesOfin interfaceImmutableSet<T>- Specified by:
selectInstancesOfin interfaceImmutableSetIterable<T>- Specified by:
selectInstancesOfin interfaceRichIterable<T>- Specified by:
selectInstancesOfin interfaceSetIterable<T>- Specified by:
selectInstancesOfin interfaceUnsortedSetIterable<T>
-
collect
public <V> ImmutableSet<V> collect(Function<? super T,? extends V> function)
Description copied from interface:RichIterableReturns a new collection with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
RichIterable<String> names = people.collect(person -> person.getFirstName() + " " + person.getLastName());- Specified by:
collectin interfaceImmutableCollection<T>- Specified by:
collectin interfaceImmutableSet<T>- Specified by:
collectin interfaceRichIterable<T>- Specified by:
collectin interfaceUnsortedSetIterable<T>
-
collectBoolean
public ImmutableBooleanSet collectBoolean(BooleanFunction<? super T> booleanFunction)
Description copied from interface:RichIterableReturns a new primitivebooleaniterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
BooleanIterable licenses = people.collectBoolean(person -> person.hasDrivingLicense());- Specified by:
collectBooleanin interfaceImmutableCollection<T>- Specified by:
collectBooleanin interfaceImmutableSet<T>- Specified by:
collectBooleanin interfaceRichIterable<T>- Specified by:
collectBooleanin interfaceUnsortedSetIterable<T>
-
collectByte
public ImmutableByteSet collectByte(ByteFunction<? super T> byteFunction)
Description copied from interface:RichIterableReturns a new primitivebyteiterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
ByteIterable bytes = people.collectByte(person -> person.getCode());- Specified by:
collectBytein interfaceImmutableCollection<T>- Specified by:
collectBytein interfaceImmutableSet<T>- Specified by:
collectBytein interfaceRichIterable<T>- Specified by:
collectBytein interfaceUnsortedSetIterable<T>
-
collectChar
public ImmutableCharSet collectChar(CharFunction<? super T> charFunction)
Description copied from interface:RichIterableReturns a new primitivechariterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
CharIterable chars = people.collectChar(person -> person.getMiddleInitial());- Specified by:
collectCharin interfaceImmutableCollection<T>- Specified by:
collectCharin interfaceImmutableSet<T>- Specified by:
collectCharin interfaceRichIterable<T>- Specified by:
collectCharin interfaceUnsortedSetIterable<T>
-
collectDouble
public ImmutableDoubleSet collectDouble(DoubleFunction<? super T> doubleFunction)
Description copied from interface:RichIterableReturns a new primitivedoubleiterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
DoubleIterable doubles = people.collectDouble(person -> person.getMilesFromNorthPole());- Specified by:
collectDoublein interfaceImmutableCollection<T>- Specified by:
collectDoublein interfaceImmutableSet<T>- Specified by:
collectDoublein interfaceRichIterable<T>- Specified by:
collectDoublein interfaceUnsortedSetIterable<T>
-
collectFloat
public ImmutableFloatSet collectFloat(FloatFunction<? super T> floatFunction)
Description copied from interface:RichIterableReturns a new primitivefloatiterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
FloatIterable floats = people.collectFloat(person -> person.getHeightInInches());- Specified by:
collectFloatin interfaceImmutableCollection<T>- Specified by:
collectFloatin interfaceImmutableSet<T>- Specified by:
collectFloatin interfaceRichIterable<T>- Specified by:
collectFloatin interfaceUnsortedSetIterable<T>
-
collectInt
public ImmutableIntSet collectInt(IntFunction<? super T> intFunction)
Description copied from interface:RichIterableReturns a new primitiveintiterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
IntIterable ints = people.collectInt(person -> person.getAge());- Specified by:
collectIntin interfaceImmutableCollection<T>- Specified by:
collectIntin interfaceImmutableSet<T>- Specified by:
collectIntin interfaceRichIterable<T>- Specified by:
collectIntin interfaceUnsortedSetIterable<T>
-
collectLong
public ImmutableLongSet collectLong(LongFunction<? super T> longFunction)
Description copied from interface:RichIterableReturns a new primitivelongiterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
LongIterable longs = people.collectLong(person -> person.getGuid());- Specified by:
collectLongin interfaceImmutableCollection<T>- Specified by:
collectLongin interfaceImmutableSet<T>- Specified by:
collectLongin interfaceRichIterable<T>- Specified by:
collectLongin interfaceUnsortedSetIterable<T>
-
collectShort
public ImmutableShortSet collectShort(ShortFunction<? super T> shortFunction)
Description copied from interface:RichIterableReturns a new primitiveshortiterable with the results of applying the specified function on each element of the source collection. This method is also commonly called transform or map.Example using a Java 8 lambda expression:
ShortIterable shorts = people.collectShort(person -> person.getNumberOfJunkMailItemsReceivedPerMonth());- Specified by:
collectShortin interfaceImmutableCollection<T>- Specified by:
collectShortin interfaceImmutableSet<T>- Specified by:
collectShortin interfaceRichIterable<T>- Specified by:
collectShortin interfaceUnsortedSetIterable<T>
-
collectWith
public <P,V> ImmutableSet<V> collectWith(Function2<? super T,? super P,? extends V> function, P parameter)
Description copied from interface:RichIterableSame asRichIterable.collect(Function)with aFunction2and specified parameter which is passed to the block.Example using a Java 8 lambda expression:
RichIterable<Integer> integers = Lists.mutable.with(1, 2, 3).collectWith((each, parameter) -> each + parameter, Integer.valueOf(1));- Specified by:
collectWithin interfaceImmutableCollection<T>- Specified by:
collectWithin interfaceImmutableSet<T>- Specified by:
collectWithin interfaceRichIterable<T>- Specified by:
collectWithin interfaceUnsortedSetIterable<T>- Parameters:
function- AFunction2to use as the collect transformation functionparameter- A parameter to pass in for evaluation of the second argumentPinfunction- Returns:
- A new
RichIterablethat contains the transformed elements returned byFunction2.value(Object, Object) - See Also:
RichIterable.collect(Function)
-
collectIf
public <V> ImmutableSet<V> collectIf(Predicate<? super T> predicate, Function<? super T,? extends V> function)
Description copied from interface:RichIterableReturns a new collection with the results of applying the specified function on each element of the source collection, but only for those elements which return true upon evaluation of the predicate. This is the optimized equivalent of calling iterable.select(predicate).collect(function).Example using a Java 8 lambda and method reference:
RichIterable<String> strings = Lists.mutable.with(1, 2, 3).collectIf(e -> e != null, Object::toString);
Example using Predicates factory:
RichIterable<String> strings = Lists.mutable.with(1, 2, 3).collectIf(Predicates.notNull(), Functions.getToString());
- Specified by:
collectIfin interfaceImmutableCollection<T>- Specified by:
collectIfin interfaceImmutableSet<T>- Specified by:
collectIfin interfaceRichIterable<T>- Specified by:
collectIfin interfaceUnsortedSetIterable<T>
-
flatCollect
public <V> ImmutableSet<V> flatCollect(Function<? super T,? extends java.lang.Iterable<V>> function)
Description copied from interface:RichIterableflatCollectis a special case ofRichIterable.collect(Function). Withcollect, when theFunctionreturns a collection, the result is a collection of collections.flatCollectoutputs a single "flattened" collection instead. This method is commonly called flatMap.Consider the following example where we have a
Personclass, and eachPersonhas a list ofAddressobjects. Take the followingFunction:Function<Person, List<Address>> addressFunction = Person::getAddresses; RichIterable<Person> people = ...;
Usingcollectreturns a collection of collections of addresses.RichIterable<List<Address>> addresses = people.collect(addressFunction);
UsingflatCollectreturns a single flattened list of addresses.RichIterable<Address> addresses = people.flatCollect(addressFunction);
- Specified by:
flatCollectin interfaceImmutableCollection<T>- Specified by:
flatCollectin interfaceImmutableSet<T>- Specified by:
flatCollectin interfaceRichIterable<T>- Specified by:
flatCollectin interfaceUnsortedSetIterable<T>- Parameters:
function- TheFunctionto apply- Returns:
- a new flattened collection produced by applying the given
function
-
toImmutable
public ImmutableSet<T> toImmutable()
Description copied from interface:UnsortedSetIterableConverts the UnsortedSetIterable to an immutable implementation. Returns this for immutable sets.- Specified by:
toImmutablein interfaceSetIterable<T>- Specified by:
toImmutablein interfaceUnsortedSetIterable<T>
-
groupBy
public <V> ImmutableSetMultimap<V,T> groupBy(Function<? super T,? extends V> function)
Description copied from interface:RichIterableFor each element of the iterable, the function is evaluated and the results of these evaluations are collected into a new multimap, where the transformed value is the key and the original values are added to the same (or similar) species of collection as the source iterable.Example using a Java 8 method reference:
Multimap<String, Person> peopleByLastName = people.groupBy(Person::getLastName);- Specified by:
groupByin interfaceImmutableCollection<T>- Specified by:
groupByin interfaceImmutableSet<T>- Specified by:
groupByin interfaceImmutableSetIterable<T>- Specified by:
groupByin interfaceRichIterable<T>- Specified by:
groupByin interfaceUnsortedSetIterable<T>
-
groupBy
public <V,R extends MutableMultimap<V,T>> R groupBy(Function<? super T,? extends V> function, R target)
Description copied from interface:RichIterableSame asRichIterable.groupBy(Function), except that the results are gathered into the specifiedtargetmultimap.Example using a Java 8 method reference:
FastListMultimap<String, Person> peopleByLastName = people.groupBy(Person::getLastName, new FastListMultimap<String, Person>());- Specified by:
groupByin interfaceRichIterable<T>- Overrides:
groupByin classAbstractRichIterable<T>
-
groupByEach
public <V> ImmutableSetMultimap<V,T> groupByEach(Function<? super T,? extends java.lang.Iterable<V>> function)
Description copied from interface:RichIterableSimilar toRichIterable.groupBy(Function), except the result of evaluating function will return a collection of keys for each value.- Specified by:
groupByEachin interfaceImmutableCollection<T>- Specified by:
groupByEachin interfaceImmutableSet<T>- Specified by:
groupByEachin interfaceImmutableSetIterable<T>- Specified by:
groupByEachin interfaceRichIterable<T>- Specified by:
groupByEachin interfaceUnsortedSetIterable<T>
-
groupByEach
public <V,R extends MutableMultimap<V,T>> R groupByEach(Function<? super T,? extends java.lang.Iterable<V>> function, R target)
Description copied from interface:RichIterableSame asRichIterable.groupByEach(Function), except that the results are gathered into the specifiedtargetmultimap.- Specified by:
groupByEachin interfaceRichIterable<T>- Overrides:
groupByEachin classAbstractRichIterable<T>
-
zip
@Deprecated public <S> ImmutableSet<Pair<T,S>> zip(java.lang.Iterable<S> that)
Deprecated.in 6.0. UseOrderedIterable.zip(Iterable)instead.Description copied from interface:RichIterableReturns aRichIterableformed from thisRichIterableand anotherRichIterableby combining corresponding elements in pairs. If one of the twoRichIterables is longer than the other, its remaining elements are ignored.- Specified by:
zipin interfaceImmutableCollection<T>- Specified by:
zipin interfaceImmutableSet<T>- Specified by:
zipin interfaceRichIterable<T>- Specified by:
zipin interfaceUnsortedSetIterable<T>- Type Parameters:
S- the type of the second half of the returned pairs- Parameters:
that- TheRichIterableproviding the second half of each result pair- Returns:
- A new
RichIterablecontaining pairs consisting of corresponding elements of thisRichIterableand that. The length of the returnedRichIterableis the minimum of the lengths of thisRichIterableand that.
-
zipWithIndex
@Deprecated public ImmutableSet<Pair<T,java.lang.Integer>> zipWithIndex()
Deprecated.in 6.0. UseOrderedIterable.zipWithIndex()instead.Description copied from interface:RichIterableZips thisRichIterablewith its indices.- Specified by:
zipWithIndexin interfaceImmutableCollection<T>- Specified by:
zipWithIndexin interfaceImmutableSet<T>- Specified by:
zipWithIndexin interfaceImmutableSetIterable<T>- Specified by:
zipWithIndexin interfaceRichIterable<T>- Specified by:
zipWithIndexin interfaceSetIterable<T>- Specified by:
zipWithIndexin interfaceUnsortedSetIterable<T>- Returns:
- A new
RichIterablecontaining pairs consisting of all elements of thisRichIterablepaired with their index. Indices start at 0. - See Also:
RichIterable.zip(Iterable)
-
newMutable
protected MutableCollection<T> newMutable(int size)
- Specified by:
newMutablein classAbstractImmutableCollection<T>
-
union
public ImmutableSet<T> union(SetIterable<? extends T> set)
Description copied from interface:SetIterableReturns the set of all objects that are a member ofthisorsetor both. The union of [1, 2, 3] and [2, 3, 4] is the set [1, 2, 3, 4]. If equal elements appear in both sets, then the output will contain the copy fromthis.- Specified by:
unionin interfaceImmutableSet<T>- Specified by:
unionin interfaceSetIterable<T>- Specified by:
unionin interfaceUnsortedSetIterable<T>
-
unionInto
public <R extends java.util.Set<T>> R unionInto(SetIterable<? extends T> set, R targetSet)
Description copied from interface:SetIterableSame asSetIterable.union(SetIterable)but adds all the objects totargetSetand returns it.- Specified by:
unionIntoin interfaceSetIterable<T>
-
intersect
public ImmutableSet<T> intersect(SetIterable<? extends T> set)
Description copied from interface:SetIterableReturns the set of all objects that are members of boththisandset. The intersection of [1, 2, 3] and [2, 3, 4] is the set [2, 3]. The output will contain instances from the smaller of the two sets (thisorset) based on the size. If the sizes are equal, the output will contain instances fromthis.Note: If you need to ensure that the memory references from
thisare preserved in the resulting set, consider usingthis.select(that::contains)instead.- Specified by:
intersectin interfaceImmutableSet<T>- Specified by:
intersectin interfaceSetIterable<T>- Specified by:
intersectin interfaceUnsortedSetIterable<T>
-
intersectInto
public <R extends java.util.Set<T>> R intersectInto(SetIterable<? extends T> set, R targetSet)
Description copied from interface:SetIterableSame asSetIterable.intersect(SetIterable)but adds all the objects totargetSetand returns it.- Specified by:
intersectIntoin interfaceSetIterable<T>
-
difference
public ImmutableSet<T> difference(SetIterable<? extends T> subtrahendSet)
Description copied from interface:SetIterableReturns the set of all members ofthisthat are not members ofsubtrahendSet. The difference of [1, 2, 3] and [2, 3, 4] is [1].- Specified by:
differencein interfaceImmutableSet<T>- Specified by:
differencein interfaceSetIterable<T>- Specified by:
differencein interfaceUnsortedSetIterable<T>
-
differenceInto
public <R extends java.util.Set<T>> R differenceInto(SetIterable<? extends T> subtrahendSet, R targetSet)
Description copied from interface:SetIterableSame asSetIterable.difference(SetIterable)but adds all the objects totargetSetand returns it.- Specified by:
differenceIntoin interfaceSetIterable<T>
-
symmetricDifference
public ImmutableSet<T> symmetricDifference(SetIterable<? extends T> setB)
Description copied from interface:SetIterableReturns the set of all objects that are a member of exactly one ofthisandsetB(elements which are in one of the sets, but not in both). For instance, for the sets [1, 2, 3] and [2, 3, 4], the symmetric difference set is [1, 4] . It is the set difference of the union and the intersection.- Specified by:
symmetricDifferencein interfaceImmutableSet<T>- Specified by:
symmetricDifferencein interfaceSetIterable<T>- Specified by:
symmetricDifferencein interfaceUnsortedSetIterable<T>
-
symmetricDifferenceInto
public <R extends java.util.Set<T>> R symmetricDifferenceInto(SetIterable<? extends T> set, R targetSet)
Description copied from interface:SetIterableSame asSetIterable.symmetricDifference(SetIterable)but adds all the objects totargetSetand returns it.- Specified by:
symmetricDifferenceIntoin interfaceSetIterable<T>
-
isSubsetOf
public boolean isSubsetOf(SetIterable<? extends T> candidateSuperset)
Description copied from interface:SetIterableReturns true if all the members ofthisare also members ofcandidateSuperset. For example, [1, 2] is a subset of [1, 2, 3], but [1, 4] is not.- Specified by:
isSubsetOfin interfaceSetIterable<T>
-
isProperSubsetOf
public boolean isProperSubsetOf(SetIterable<? extends T> candidateSuperset)
Description copied from interface:SetIterableReturns true if all the members ofthisare also members ofcandidateSupersetand the two sets are not equal. For example, [1, 2] is a proper subset of [1, 2, 3], but [1, 2, 3] is not.- Specified by:
isProperSubsetOfin interfaceSetIterable<T>
-
powerSet
public ImmutableSet<UnsortedSetIterable<T>> powerSet()
Description copied from interface:UnsortedSetIterableReturns the set whose members are all possible subsets ofthis. For example, the powerset of [1, 2] is [[], [1], [2], [1, 2]].- Specified by:
powerSetin interfaceImmutableSet<T>- Specified by:
powerSetin interfaceUnsortedSetIterable<T>
-
cartesianProduct
public <B> LazyIterable<Pair<T,B>> cartesianProduct(SetIterable<B> set)
Description copied from interface:SetIterableReturns the set whose members are all possible ordered pairs (a, b) where a is a member ofthisand b is a member ofset.- Specified by:
cartesianProductin interfaceSetIterable<T>
-
asParallel
public ParallelUnsortedSetIterable<T> asParallel(java.util.concurrent.ExecutorService executorService, int batchSize)
Description copied from interface:SetIterableReturns a parallel iterable of this SetIterable.- Specified by:
asParallelin interfaceSetIterable<T>- Specified by:
asParallelin interfaceUnsortedSetIterable<T>
-
-