Class SetIterables
java.lang.Object
org.eclipse.collections.impl.utility.internal.SetIterables
Set algebra operations.
Most operations are non-destructive, i.e. no input sets are modified during execution. The exception is operations ending in "Into." These accept the target collection of the final calculation as the first parameter.
-
Method Summary
Modifier and TypeMethodDescriptionstatic <A,B> LazyIterable<Pair<A, B>> cartesianProduct(SetIterable<A> set1, SetIterable<B> set2) static <A,B, C> LazyIterable<C> cartesianProduct(SetIterable<A> set1, SetIterable<B> set2, Function2<A, B, C> function) static <E> MutableSet<E>difference(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet) static <E,R extends Set<E>>
RdifferenceInto(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet, R targetSet) static <T> ImmutableSet<ImmutableSet<T>>immutablePowerSet(Set<T> set) Returns an Immutable version of powerset where the inner sets are also immutable.static <E> MutableSet<E>intersect(SetIterable<? extends E> setA, SetIterable<? extends E> setB) static <E,R extends Set<E>>
RintersectInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) static <E> booleanisProperSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset) static <E> booleanisSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset) static <T> MutableSet<MutableSet<T>>static <T> MutableSet<MutableSet<T>>static <E> MutableSet<E>symmetricDifference(SetIterable<? extends E> setA, SetIterable<? extends E> setB) static <E,R extends Set<E>>
RsymmetricDifferenceInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) static <E> MutableSet<E>union(SetIterable<? extends E> setA, SetIterable<? extends E> setB) static <E,R extends Set<E>>
RunionInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet)
-
Method Details
-
union
-
unionInto
public static <E,R extends Set<E>> R unionInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) -
intersect
public static <E> MutableSet<E> intersect(SetIterable<? extends E> setA, SetIterable<? extends E> setB) -
intersectInto
public static <E,R extends Set<E>> R intersectInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) -
difference
public static <E> MutableSet<E> difference(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet) -
differenceInto
public static <E,R extends Set<E>> R differenceInto(SetIterable<? extends E> minuendSet, SetIterable<? extends E> subtrahendSet, R targetSet) -
symmetricDifference
public static <E> MutableSet<E> symmetricDifference(SetIterable<? extends E> setA, SetIterable<? extends E> setB) -
symmetricDifferenceInto
public static <E,R extends Set<E>> R symmetricDifferenceInto(SetIterable<? extends E> setA, SetIterable<? extends E> setB, R targetSet) -
isSubsetOf
public static <E> boolean isSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset) -
isProperSubsetOf
public static <E> boolean isProperSubsetOf(SetIterable<? extends E> candidateSubset, SetIterable<? extends E> candidateSuperset) -
powerSet
-
powerSet
-
immutablePowerSet
Returns an Immutable version of powerset where the inner sets are also immutable. -
cartesianProduct
public static <A,B> LazyIterable<Pair<A,B>> cartesianProduct(SetIterable<A> set1, SetIterable<B> set2) -
cartesianProduct
public static <A,B, LazyIterable<C> cartesianProductC> (SetIterable<A> set1, SetIterable<B> set2, Function2<A, B, C> function)
-