Interface SetIterable<T>
-
- All Superinterfaces:
InternalIterable<T>
,java.lang.Iterable<T>
,RichIterable<T>
- All Known Subinterfaces:
FixedSizeSet<T>
,ImmutableSet<T>
,ImmutableSetIterable<T>
,ImmutableSortedSet<T>
,MultiReaderSet<T>
,MutableSet<T>
,MutableSetIterable<T>
,MutableSortedSet<T>
,SortedSetIterable<T>
,UnsortedSetIterable<T>
- All Known Implementing Classes:
AbstractImmutableSet
,AbstractImmutableSortedSet
,AbstractMemoryEfficientMutableSet
,AbstractMutableSet
,AbstractUnifiedSet
,DoubletonSet
,EmptySet
,ImmutableDoubletonSet
,ImmutableEmptySet
,ImmutableEmptySetWithHashingStrategy
,ImmutableEmptySortedSet
,ImmutableQuadrupletonSet
,ImmutableSingletonSet
,ImmutableTreeSet
,ImmutableTripletonSet
,ImmutableUnifiedSet
,ImmutableUnifiedSetWithHashingStrategy
,MultiReaderUnifiedSet
,MultiReaderUnifiedSet.UntouchableMutableSet
,QuadrupletonSet
,SetAdapter
,SingletonSet
,SortedSetAdapter
,SynchronizedMutableSet
,SynchronizedSortedSet
,TreeSortedSet
,TripletonSet
,UnifiedSet
,UnifiedSetWithHashingStrategy
,UnmodifiableMutableSet
,UnmodifiableSortedSet
public interface SetIterable<T> extends RichIterable<T>
A Read-only Set api, with the minor exception inherited from java.lang.Iterable (iterable.iterator().remove()).
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description ParallelSetIterable<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 ofthis
and b is a member ofset
.SetIterable<T>
difference(SetIterable<? extends T> subtrahendSet)
Returns the set of all members ofthis
that are not members ofsubtrahendSet
.<R extends java.util.Set<T>>
RdifferenceInto(SetIterable<? extends T> subtrahendSet, R targetSet)
Same asdifference(SetIterable)
but adds all the objects totargetSet
and returns it.boolean
equals(java.lang.Object o)
Follows the same general contract asSet.equals(Object)
.int
hashCode()
Follows the same general contract asSet.hashCode()
.SetIterable<T>
intersect(SetIterable<? extends T> set)
Returns the set of all objects that are members of boththis
andset
.<R extends java.util.Set<T>>
RintersectInto(SetIterable<? extends T> set, R targetSet)
Same asintersect(SetIterable)
but adds all the objects totargetSet
and returns it.boolean
isProperSubsetOf(SetIterable<? extends T> candidateSuperset)
Returns true if all the members ofthis
are also members ofcandidateSuperset
and the two sets are not equal.boolean
isSubsetOf(SetIterable<? extends T> candidateSuperset)
Returns true if all the members ofthis
are also members ofcandidateSuperset
.PartitionSet<T>
partition(Predicate<? super T> predicate)
Filters a collection into a PartitionedIterable based on the evaluation of the predicate.<P> PartitionSet<T>
partitionWith(Predicate2<? super T,? super P> predicate, P parameter)
Filters a collection into a PartitionIterable based on the evaluation of the predicate.SetIterable<T>
reject(Predicate<? super T> predicate)
Returns all elements of the source collection that return false when evaluating of the predicate.<P> SetIterable<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
.SetIterable<T>
select(Predicate<? super T> predicate)
Returns all elements of the source collection that return true when evaluating the predicate.<S> SetIterable<S>
selectInstancesOf(java.lang.Class<S> clazz)
Returns all elements of the source collection that are instances of the Classclazz
.<P> SetIterable<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
.SetIterable<T>
symmetricDifference(SetIterable<? extends T> setB)
Returns the set of all objects that are a member of exactly one ofthis
andsetB
(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 assymmetricDifference(SetIterable)
but adds all the objects totargetSet
and returns it.SetIterable<T>
tap(Procedure<? super T> procedure)
Executes the Procedure for each element in the iterable and returnsthis
.ImmutableSetIterable<T>
toImmutable()
SetIterable<T>
union(SetIterable<? extends T> set)
Returns the set of all objects that are a member ofthis
orset
or both.<R extends java.util.Set<T>>
RunionInto(SetIterable<? extends T> set, R targetSet)
Same asunion(SetIterable)
but adds all the objects totargetSet
and returns it.SetIterable<Pair<T,java.lang.Integer>>
zipWithIndex()
Deprecated.in 6.0.-
Methods inherited from interface org.eclipse.collections.api.InternalIterable
forEach, forEachWith, forEachWithIndex
-
Methods inherited from interface org.eclipse.collections.api.RichIterable
aggregateBy, aggregateBy, aggregateInPlaceBy, allSatisfy, allSatisfyWith, anySatisfy, anySatisfyWith, appendString, appendString, appendString, asLazy, chunk, collect, collect, collectBoolean, collectBoolean, collectByte, collectByte, collectChar, collectChar, collectDouble, collectDouble, collectFloat, collectFloat, collectIf, collectIf, collectInt, collectInt, collectLong, collectLong, collectShort, collectShort, collectWith, collectWith, contains, containsAll, containsAllArguments, containsAllIterable, containsAny, containsAnyIterable, containsBy, containsNone, containsNoneIterable, count, countBy, countBy, countByEach, countByEach, countByWith, countByWith, countWith, detect, detectIfNone, detectOptional, detectWith, detectWithIfNone, detectWithOptional, each, flatCollect, flatCollect, flatCollectBoolean, flatCollectByte, flatCollectChar, flatCollectDouble, flatCollectFloat, flatCollectInt, flatCollectLong, flatCollectShort, flatCollectWith, flatCollectWith, forEach, getAny, getFirst, getLast, getOnly, groupBy, groupBy, groupByAndCollect, groupByEach, groupByEach, groupByUniqueKey, 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, reduceInPlace, reduceInPlace, reject, rejectWith, select, selectWith, size, sumByDouble, sumByFloat, sumByInt, sumByLong, 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, zip, zipWithIndex
-
-
-
-
Method Detail
-
union
SetIterable<T> union(SetIterable<? extends T> set)
Returns the set of all objects that are a member ofthis
orset
or 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
.
-
unionInto
<R extends java.util.Set<T>> R unionInto(SetIterable<? extends T> set, R targetSet)
Same asunion(SetIterable)
but adds all the objects totargetSet
and returns it.
-
intersect
SetIterable<T> intersect(SetIterable<? extends T> set)
Returns the set of all objects that are members of boththis
andset
. The intersection of [1, 2, 3] and [2, 3, 4] is the set [2, 3]. The output will contain instances fromthis
, notset
.
-
intersectInto
<R extends java.util.Set<T>> R intersectInto(SetIterable<? extends T> set, R targetSet)
Same asintersect(SetIterable)
but adds all the objects totargetSet
and returns it.
-
difference
SetIterable<T> difference(SetIterable<? extends T> subtrahendSet)
Returns the set of all members ofthis
that are not members ofsubtrahendSet
. The difference of [1, 2, 3] and [2, 3, 4] is [1].
-
differenceInto
<R extends java.util.Set<T>> R differenceInto(SetIterable<? extends T> subtrahendSet, R targetSet)
Same asdifference(SetIterable)
but adds all the objects totargetSet
and returns it.
-
symmetricDifference
SetIterable<T> symmetricDifference(SetIterable<? extends T> setB)
Returns the set of all objects that are a member of exactly one ofthis
andsetB
(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.
-
symmetricDifferenceInto
<R extends java.util.Set<T>> R symmetricDifferenceInto(SetIterable<? extends T> set, R targetSet)
Same assymmetricDifference(SetIterable)
but adds all the objects totargetSet
and returns it.
-
isSubsetOf
boolean isSubsetOf(SetIterable<? extends T> candidateSuperset)
Returns true if all the members ofthis
are also members ofcandidateSuperset
. For example, [1, 2] is a subset of [1, 2, 3], but [1, 4] is not.
-
isProperSubsetOf
boolean isProperSubsetOf(SetIterable<? extends T> candidateSuperset)
Returns true if all the members ofthis
are also members ofcandidateSuperset
and the two sets are not equal. For example, [1, 2] is a proper subset of [1, 2, 3], but [1, 2, 3] is not.
-
cartesianProduct
<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 ofthis
and b is a member ofset
.
-
tap
SetIterable<T> tap(Procedure<? super T> procedure)
Description copied from interface:RichIterable
Executes 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()));
Example using an anonymous inner class:
RichIterable<Person> tapped = people.tap(new Procedure<Person>() { public void value(Person person) { LOGGER.info(person.getName()); } });
- Specified by:
tap
in interfaceRichIterable<T>
- See Also:
RichIterable.each(Procedure)
,RichIterable.forEach(Procedure)
-
select
SetIterable<T> select(Predicate<? super T> predicate)
Description copied from interface:RichIterable
Returns 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"));
Example using an anonymous inner class:
RichIterable<Person> selected = people.select(new Predicate<Person>() { public boolean accept(Person person) { return person.getAddress().getCity().equals("London"); } });
- Specified by:
select
in interfaceRichIterable<T>
-
selectWith
<P> SetIterable<T> selectWith(Predicate2<? super T,? super P> predicate, P parameter)
Description copied from interface:RichIterable
Similar toRichIterable.select(Predicate)
, except with an evaluation parameter for the second generic argument inPredicate2
.E.g. return a
Collection
of 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));
Example using an anonymous inner class:
RichIterable<Person> selected = people.selectWith(new Predicate2<Person, Integer>() { public boolean accept(Person person, Integer age) { return person.getAge()>= age; } }, Integer.valueOf(18));
- Specified by:
selectWith
in interfaceRichIterable<T>
- Parameters:
predicate
- aPredicate2
to use as the select criteriaparameter
- a parameter to pass in for evaluation of the second argumentP
inpredicate
- See Also:
RichIterable.select(Predicate)
-
reject
SetIterable<T> reject(Predicate<? super T> predicate)
Description copied from interface:RichIterable
Returns 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"));
Example using an anonymous inner class:
RichIterable<Person> rejected = people.reject(new Predicate<Person>() { public boolean accept(Person person) { return person.person.getLastName().equals("Smith"); } });
- Specified by:
reject
in interfaceRichIterable<T>
- Parameters:
predicate
- aPredicate
to use as the reject criteria- Returns:
- a RichIterable that contains elements that cause
Predicate.accept(Object)
method to evaluate to false
-
rejectWith
<P> SetIterable<T> rejectWith(Predicate2<? super T,? super P> predicate, P parameter)
Description copied from interface:RichIterable
Similar toRichIterable.reject(Predicate)
, except with an evaluation parameter for the second generic argument inPredicate2
.E.g. return a
Collection
of 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));
Example using an anonymous inner class:
MutableList<Person> rejected = people.rejectWith(new Predicate2<Person, Integer>() { public boolean accept(Person person, Integer age) { return person.getAge() < age; } }, Integer.valueOf(18));
- Specified by:
rejectWith
in interfaceRichIterable<T>
- Parameters:
predicate
- aPredicate2
to use as the select criteriaparameter
- a parameter to pass in for evaluation of the second argumentP
inpredicate
- See Also:
RichIterable.select(Predicate)
-
partition
PartitionSet<T> partition(Predicate<? super T> predicate)
Description copied from interface:RichIterable
Filters 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"));
Example using an anonymous inner class:
PartitionIterable<Person> newYorkersAndNonNewYorkers = people.partition(new Predicate<Person>() { public boolean accept(Person person) { return person.getAddress().getState().getName().equals("New York"); } });
- Specified by:
partition
in interfaceRichIterable<T>
-
partitionWith
<P> PartitionSet<T> partitionWith(Predicate2<? super T,? super P> predicate, P parameter)
Description copied from interface:RichIterable
Filters 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");
Example using an anonymous inner class:
PartitionIterable<Person> newYorkersAndNonNewYorkers = people.partitionWith(new Predicate2<Person, String>() { public boolean accept(Person person, String state) { return person.getAddress().getState().getName().equals(state); } }, "New York");
- Specified by:
partitionWith
in interfaceRichIterable<T>
-
selectInstancesOf
<S> SetIterable<S> selectInstancesOf(java.lang.Class<S> clazz)
Description copied from interface:RichIterable
Returns 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:
selectInstancesOf
in interfaceRichIterable<T>
-
zipWithIndex
@Deprecated SetIterable<Pair<T,java.lang.Integer>> zipWithIndex()
Deprecated.in 6.0. UseOrderedIterable.zipWithIndex()
instead.Description copied from interface:RichIterable
Zips thisRichIterable
with its indices.- Specified by:
zipWithIndex
in interfaceRichIterable<T>
- Returns:
- A new
RichIterable
containing pairs consisting of all elements of thisRichIterable
paired with their index. Indices start at 0. - See Also:
RichIterable.zip(Iterable)
-
asParallel
ParallelSetIterable<T> asParallel(java.util.concurrent.ExecutorService executorService, int batchSize)
Returns a parallel iterable of this SetIterable.- Since:
- 6.0
-
equals
boolean equals(java.lang.Object o)
Follows the same general contract asSet.equals(Object)
.- Overrides:
equals
in classjava.lang.Object
-
hashCode
int hashCode()
Follows the same general contract asSet.hashCode()
.- Overrides:
hashCode
in classjava.lang.Object
-
toImmutable
ImmutableSetIterable<T> toImmutable()
-
-