Package org.xyou.xcommon.seq
Class XSeq
- java.lang.Object
-
- org.xyou.xcommon.seq.XSeq
-
public final class XSeq extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description XSeq()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <V> java.util.Collection<V>addAll(@NonNull java.util.Collection<V> coll, @NonNull java.lang.Iterable<V> collOther)static <V> java.util.Collection<V>addAll(@NonNull java.util.Collection<V> coll, @NonNull V... arr)static <V> voidaddNotNull(@NonNull java.util.Collection<V> coll, V ele)static <V> booleancontainAll(@NonNull java.lang.Iterable<V> coll1, @NonNull java.lang.Iterable<V> coll2)static <V1,V2>
booleancontainAny(@NonNull java.lang.Iterable<V1> coll1, @NonNull java.lang.Iterable<V2> coll2)static <V> java.util.List<V>distinct(@NonNull java.lang.Iterable<V> seq)static java.util.List<java.lang.Boolean>filter(@lombok.NonNull boolean[] seq, @NonNull XFunction<java.lang.Boolean,java.lang.Boolean> func)static java.util.List<java.lang.Boolean>filter(@lombok.NonNull boolean[] seq, @NonNull XFunction2<java.lang.Boolean,java.lang.Integer,java.lang.Boolean> func)static java.util.List<java.lang.Byte>filter(@lombok.NonNull byte[] seq, @NonNull XFunction<java.lang.Byte,java.lang.Boolean> func)static java.util.List<java.lang.Byte>filter(@lombok.NonNull byte[] seq, @NonNull XFunction2<java.lang.Byte,java.lang.Integer,java.lang.Boolean> func)static java.util.List<java.lang.Double>filter(@lombok.NonNull double[] seq, @NonNull XFunction<java.lang.Double,java.lang.Boolean> func)static java.util.List<java.lang.Double>filter(@lombok.NonNull double[] seq, @NonNull XFunction2<java.lang.Double,java.lang.Integer,java.lang.Boolean> func)static java.util.List<java.lang.Float>filter(@lombok.NonNull float[] seq, @NonNull XFunction<java.lang.Float,java.lang.Boolean> func)static java.util.List<java.lang.Float>filter(@lombok.NonNull float[] seq, @NonNull XFunction2<java.lang.Float,java.lang.Integer,java.lang.Boolean> func)static java.util.List<java.lang.Integer>filter(@lombok.NonNull int[] seq, @NonNull XFunction<java.lang.Integer,java.lang.Boolean> func)static java.util.List<java.lang.Integer>filter(@lombok.NonNull int[] seq, @NonNull XFunction2<java.lang.Integer,java.lang.Integer,java.lang.Boolean> func)static java.util.List<java.lang.Long>filter(@lombok.NonNull long[] seq, @NonNull XFunction<java.lang.Long,java.lang.Boolean> func)static java.util.List<java.lang.Long>filter(@lombok.NonNull long[] seq, @NonNull XFunction2<java.lang.Long,java.lang.Integer,java.lang.Boolean> func)static java.util.List<java.lang.Short>filter(@lombok.NonNull short[] seq, @NonNull XFunction<java.lang.Short,java.lang.Boolean> func)static java.util.List<java.lang.Short>filter(@lombok.NonNull short[] seq, @NonNull XFunction2<java.lang.Short,java.lang.Integer,java.lang.Boolean> func)static <V> java.util.List<V>filter(@NonNull java.lang.Iterable<V> seq, @NonNull XFunction<V,java.lang.Boolean> func)static <V> java.util.List<V>filter(@NonNull java.lang.Iterable<V> seq, @NonNull XFunction2<V,java.lang.Integer,java.lang.Boolean> func)static <V> java.util.List<V>filter(@NonNull V[] seq, @NonNull XFunction<V,java.lang.Boolean> func)static <V> java.util.List<V>filter(@NonNull V[] seq, @NonNull XFunction2<V,java.lang.Integer,java.lang.Boolean> func)static voidforEach(@lombok.NonNull boolean[] seq, @NonNull XConsumer<java.lang.Boolean> func)static voidforEach(@lombok.NonNull boolean[] seq, @NonNull XConsumer2<java.lang.Boolean,java.lang.Integer> func)static voidforEach(@lombok.NonNull byte[] seq, @NonNull XConsumer<java.lang.Byte> func)static voidforEach(@lombok.NonNull byte[] seq, @NonNull XConsumer2<java.lang.Byte,java.lang.Integer> func)static voidforEach(@lombok.NonNull double[] seq, @NonNull XConsumer<java.lang.Double> func)static voidforEach(@lombok.NonNull double[] seq, @NonNull XConsumer2<java.lang.Double,java.lang.Integer> func)static voidforEach(@lombok.NonNull float[] seq, @NonNull XConsumer<java.lang.Float> func)static voidforEach(@lombok.NonNull float[] seq, @NonNull XConsumer2<java.lang.Float,java.lang.Integer> func)static voidforEach(@lombok.NonNull int[] seq, @NonNull XConsumer<java.lang.Integer> func)static voidforEach(@lombok.NonNull int[] seq, @NonNull XConsumer2<java.lang.Integer,java.lang.Integer> func)static voidforEach(@lombok.NonNull long[] seq, @NonNull XConsumer<java.lang.Long> func)static voidforEach(@lombok.NonNull long[] seq, @NonNull XConsumer2<java.lang.Long,java.lang.Integer> func)static voidforEach(@lombok.NonNull short[] seq, @NonNull XConsumer<java.lang.Short> func)static voidforEach(@lombok.NonNull short[] seq, @NonNull XConsumer2<java.lang.Short,java.lang.Integer> func)static <V> voidforEach(@NonNull java.lang.Iterable<V> seq, @NonNull XConsumer<V> func)static <V> voidforEach(@NonNull java.lang.Iterable<V> seq, @NonNull XConsumer2<V,java.lang.Integer> func)static <V> voidforEach(@NonNull V[] seq, @NonNull XConsumer<V> func)static <V> voidforEach(@NonNull V[] seq, @NonNull XConsumer2<V,java.lang.Integer> func)static <V> java.util.Set<V>intersect(@NonNull java.lang.Iterable<V> col1, @NonNull java.lang.Iterable<V> col2)static booleanisEmpty(java.lang.Object seq)static <V,T>
java.util.List<T>map(@NonNull java.lang.Iterable<V> coll, @NonNull XFunction<V,T> func)static <V,T>
java.util.List<T>map(@NonNull java.lang.Iterable<V> seq, @NonNull XFunction2<V,java.lang.Integer,T> func)static <V,T>
java.util.List<T>map(@NonNull V[] seq, @NonNull XFunction<V,T> func)static <V,T>
java.util.List<T>map(@NonNull V[] seq, @NonNull XFunction2<V,java.lang.Integer,T> func)static <V extends java.lang.Number>
Vmax(@NonNull java.lang.Iterable<V> coll)static <V extends java.lang.Number>
Vmin(@NonNull java.lang.Iterable<V> coll)static <V> V[]newArr(@NonNull java.lang.Iterable<V> coll)static <V> V[]newArr(@NonNull V... arr)static <V> java.util.List<V>newArrayList(@NonNull java.lang.Iterable<V> coll)static <V> java.util.List<V>newArrayList(@NonNull V... arr)static <V> java.util.Set<V>newConcurrentHashSet(@NonNull java.lang.Iterable<V> coll)static <V> java.util.Set<V>newConcurrentHashSet(@NonNull V... arr)static <V> java.util.Set<V>newHashSet(@NonNull java.lang.Iterable<V> collEle)static <V> java.util.Set<V>newHashSet(@NonNull V... arr)static <V> java.util.Set<V>newLinkedHashSet(@NonNull java.lang.Iterable<V> coll)static <V> java.util.Set<V>newLinkedHashSet(@NonNull V... arr)static <V> java.util.List<V>newLinkedList(@NonNull java.lang.Iterable<V> coll)static <V> java.util.List<V>newLinkedList(@NonNull V... arr)static <V> java.util.List<V>newList(@NonNull XSupplier<java.util.List<V>> constructor, @NonNull java.lang.Iterable<V> collEle)static <V> java.util.List<V>newList(@NonNull XSupplier<java.util.List<V>> constructor, @NonNull V... arr)static <V> java.util.Set<V>newSet(@NonNull XSupplier<java.util.Set<V>> constructor, @NonNull java.lang.Iterable<V> coll)static <V> java.util.Set<V>newSet(@NonNull XSupplier<java.util.Set<V>> constructor, @NonNull V... arr)static <V> java.util.Set<V>newTreeSet(@NonNull java.lang.Iterable<V> coll)static <V> java.util.Set<V>newTreeSet(@NonNull V... arr)static <V> java.util.List<java.util.List<V>>partition(@NonNull java.lang.Iterable<V> coll, @NonNull java.lang.Integer size)static <V> Vreduce(@NonNull java.lang.Iterable<V> seq, @NonNull XFunction2<V,V,V> func)static <V> Vreduce(@NonNull V[] seq, @NonNull XFunction2<V,V,V> func)static <V> java.util.List<V>reverse(@NonNull java.lang.Iterable<V> coll)static <V> java.util.List<V>shuffleLsLsByLsWeight(@NonNull java.util.List<java.util.List<V>> lsLs, @NonNull java.util.List<java.lang.Double> lsWeight, @NonNull java.lang.Integer sizePartition)static <V> java.util.List<V>shuffleLsTop(@NonNull java.util.List<V> lsItem, @NonNull java.lang.Integer numTop)static intsize(@NonNull java.lang.Object in)static <V> java.util.List<V>slice(@NonNull java.lang.Iterable<V> coll, @NonNull java.lang.Integer idxEnd)static <V> java.util.List<V>slice(@NonNull java.lang.Iterable<V> coll, java.lang.Integer start, java.lang.Integer end)static <V extends java.lang.Number>
doublesum(@NonNull java.lang.Iterable<V> coll)static <V> java.util.Set<V>toSetIfNot(@NonNull java.lang.Iterable<V> coll)
-
-
-
Method Detail
-
newArr
@SafeVarargs public static <V> V[] newArr(@NonNull @NonNull V... arr)
-
newArr
public static <V> V[] newArr(@NonNull @NonNull java.lang.Iterable<V> coll)
-
addAll
public static <V> java.util.Collection<V> addAll(@NonNull @NonNull java.util.Collection<V> coll, @NonNull @NonNull java.lang.Iterable<V> collOther)
-
addAll
@SafeVarargs public static <V> java.util.Collection<V> addAll(@NonNull @NonNull java.util.Collection<V> coll, @NonNull @NonNull V... arr)
-
newList
public static <V> java.util.List<V> newList(@NonNull @NonNull XSupplier<java.util.List<V>> constructor, @NonNull @NonNull java.lang.Iterable<V> collEle)
-
newList
@SafeVarargs public static <V> java.util.List<V> newList(@NonNull @NonNull XSupplier<java.util.List<V>> constructor, @NonNull @NonNull V... arr)
-
newArrayList
public static <V> java.util.List<V> newArrayList(@NonNull @NonNull java.lang.Iterable<V> coll)
-
newArrayList
@SafeVarargs public static <V> java.util.List<V> newArrayList(@NonNull @NonNull V... arr)
-
newLinkedList
public static <V> java.util.List<V> newLinkedList(@NonNull @NonNull java.lang.Iterable<V> coll)
-
newLinkedList
@SafeVarargs public static <V> java.util.List<V> newLinkedList(@NonNull @NonNull V... arr)
-
newSet
public static <V> java.util.Set<V> newSet(@NonNull @NonNull XSupplier<java.util.Set<V>> constructor, @NonNull @NonNull java.lang.Iterable<V> coll)
-
newSet
@SafeVarargs public static <V> java.util.Set<V> newSet(@NonNull @NonNull XSupplier<java.util.Set<V>> constructor, @NonNull @NonNull V... arr)
-
newHashSet
public static <V> java.util.Set<V> newHashSet(@NonNull @NonNull java.lang.Iterable<V> collEle)
-
newHashSet
@SafeVarargs public static <V> java.util.Set<V> newHashSet(@NonNull @NonNull V... arr)
-
newTreeSet
public static <V> java.util.Set<V> newTreeSet(@NonNull @NonNull java.lang.Iterable<V> coll)
-
newTreeSet
@SafeVarargs public static <V> java.util.Set<V> newTreeSet(@NonNull @NonNull V... arr)
-
newLinkedHashSet
public static <V> java.util.Set<V> newLinkedHashSet(@NonNull @NonNull java.lang.Iterable<V> coll)
-
newLinkedHashSet
@SafeVarargs public static <V> java.util.Set<V> newLinkedHashSet(@NonNull @NonNull V... arr)
-
newConcurrentHashSet
public static <V> java.util.Set<V> newConcurrentHashSet(@NonNull @NonNull java.lang.Iterable<V> coll)
-
newConcurrentHashSet
@SafeVarargs public static <V> java.util.Set<V> newConcurrentHashSet(@NonNull @NonNull V... arr)
-
size
public static int size(@NonNull @NonNull java.lang.Object in)
-
isEmpty
public static boolean isEmpty(java.lang.Object seq)
-
toSetIfNot
public static <V> java.util.Set<V> toSetIfNot(@NonNull @NonNull java.lang.Iterable<V> coll)
-
intersect
public static <V> java.util.Set<V> intersect(@NonNull @NonNull java.lang.Iterable<V> col1, @NonNull @NonNull java.lang.Iterable<V> col2)
-
containAll
public static <V> boolean containAll(@NonNull @NonNull java.lang.Iterable<V> coll1, @NonNull @NonNull java.lang.Iterable<V> coll2)
-
reverse
public static <V> java.util.List<V> reverse(@NonNull @NonNull java.lang.Iterable<V> coll)
-
containAny
public static <V1,V2> boolean containAny(@NonNull @NonNull java.lang.Iterable<V1> coll1, @NonNull @NonNull java.lang.Iterable<V2> coll2)
-
partition
public static <V> java.util.List<java.util.List<V>> partition(@NonNull @NonNull java.lang.Iterable<V> coll, @NonNull @NonNull java.lang.Integer size)
-
slice
public static <V> java.util.List<V> slice(@NonNull @NonNull java.lang.Iterable<V> coll, @NonNull @NonNull java.lang.Integer idxEnd)
-
slice
public static <V> java.util.List<V> slice(@NonNull @NonNull java.lang.Iterable<V> coll, java.lang.Integer start, java.lang.Integer end)
-
addNotNull
public static <V> void addNotNull(@NonNull @NonNull java.util.Collection<V> coll, V ele)
-
shuffleLsTop
public static <V> java.util.List<V> shuffleLsTop(@NonNull @NonNull java.util.List<V> lsItem, @NonNull @NonNull java.lang.Integer numTop)
-
shuffleLsLsByLsWeight
public static <V> java.util.List<V> shuffleLsLsByLsWeight(@NonNull @NonNull java.util.List<java.util.List<V>> lsLs, @NonNull @NonNull java.util.List<java.lang.Double> lsWeight, @NonNull @NonNull java.lang.Integer sizePartition)
-
sum
public static <V extends java.lang.Number> double sum(@NonNull @NonNull java.lang.Iterable<V> coll)
-
min
public static <V extends java.lang.Number> V min(@NonNull @NonNull java.lang.Iterable<V> coll)
-
max
public static <V extends java.lang.Number> V max(@NonNull @NonNull java.lang.Iterable<V> coll)
-
distinct
public static <V> java.util.List<V> distinct(@NonNull @NonNull java.lang.Iterable<V> seq)
-
filter
public static java.util.List<java.lang.Byte> filter(@NonNull @lombok.NonNull byte[] seq, @NonNull @NonNull XFunction<java.lang.Byte,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Short> filter(@NonNull @lombok.NonNull short[] seq, @NonNull @NonNull XFunction<java.lang.Short,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Integer> filter(@NonNull @lombok.NonNull int[] seq, @NonNull @NonNull XFunction<java.lang.Integer,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Long> filter(@NonNull @lombok.NonNull long[] seq, @NonNull @NonNull XFunction<java.lang.Long,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Float> filter(@NonNull @lombok.NonNull float[] seq, @NonNull @NonNull XFunction<java.lang.Float,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Double> filter(@NonNull @lombok.NonNull double[] seq, @NonNull @NonNull XFunction<java.lang.Double,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Boolean> filter(@NonNull @lombok.NonNull boolean[] seq, @NonNull @NonNull XFunction<java.lang.Boolean,java.lang.Boolean> func)
-
filter
public static <V> java.util.List<V> filter(@NonNull @NonNull V[] seq, @NonNull @NonNull XFunction<V,java.lang.Boolean> func)
-
filter
public static <V> java.util.List<V> filter(@NonNull @NonNull java.lang.Iterable<V> seq, @NonNull @NonNull XFunction<V,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Byte> filter(@NonNull @lombok.NonNull byte[] seq, @NonNull @NonNull XFunction2<java.lang.Byte,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Short> filter(@NonNull @lombok.NonNull short[] seq, @NonNull @NonNull XFunction2<java.lang.Short,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Integer> filter(@NonNull @lombok.NonNull int[] seq, @NonNull @NonNull XFunction2<java.lang.Integer,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Long> filter(@NonNull @lombok.NonNull long[] seq, @NonNull @NonNull XFunction2<java.lang.Long,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Float> filter(@NonNull @lombok.NonNull float[] seq, @NonNull @NonNull XFunction2<java.lang.Float,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Double> filter(@NonNull @lombok.NonNull double[] seq, @NonNull @NonNull XFunction2<java.lang.Double,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static java.util.List<java.lang.Boolean> filter(@NonNull @lombok.NonNull boolean[] seq, @NonNull @NonNull XFunction2<java.lang.Boolean,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static <V> java.util.List<V> filter(@NonNull @NonNull V[] seq, @NonNull @NonNull XFunction2<V,java.lang.Integer,java.lang.Boolean> func)
-
filter
public static <V> java.util.List<V> filter(@NonNull @NonNull java.lang.Iterable<V> seq, @NonNull @NonNull XFunction2<V,java.lang.Integer,java.lang.Boolean> func)
-
map
public static <V,T> java.util.List<T> map(@NonNull @NonNull V[] seq, @NonNull @NonNull XFunction<V,T> func)
-
map
public static <V,T> java.util.List<T> map(@NonNull @NonNull java.lang.Iterable<V> coll, @NonNull @NonNull XFunction<V,T> func)
-
map
public static <V,T> java.util.List<T> map(@NonNull @NonNull V[] seq, @NonNull @NonNull XFunction2<V,java.lang.Integer,T> func)
-
map
public static <V,T> java.util.List<T> map(@NonNull @NonNull java.lang.Iterable<V> seq, @NonNull @NonNull XFunction2<V,java.lang.Integer,T> func)
-
reduce
public static <V> V reduce(@NonNull @NonNull V[] seq, @NonNull @NonNull XFunction2<V,V,V> func)
-
reduce
public static <V> V reduce(@NonNull @NonNull java.lang.Iterable<V> seq, @NonNull @NonNull XFunction2<V,V,V> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull byte[] seq, @NonNull @NonNull XConsumer<java.lang.Byte> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull short[] seq, @NonNull @NonNull XConsumer<java.lang.Short> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull int[] seq, @NonNull @NonNull XConsumer<java.lang.Integer> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull long[] seq, @NonNull @NonNull XConsumer<java.lang.Long> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull float[] seq, @NonNull @NonNull XConsumer<java.lang.Float> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull double[] seq, @NonNull @NonNull XConsumer<java.lang.Double> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull boolean[] seq, @NonNull @NonNull XConsumer<java.lang.Boolean> func)
-
forEach
public static <V> void forEach(@NonNull @NonNull V[] seq, @NonNull @NonNull XConsumer<V> func)
-
forEach
public static <V> void forEach(@NonNull @NonNull java.lang.Iterable<V> seq, @NonNull @NonNull XConsumer<V> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull byte[] seq, @NonNull @NonNull XConsumer2<java.lang.Byte,java.lang.Integer> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull short[] seq, @NonNull @NonNull XConsumer2<java.lang.Short,java.lang.Integer> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull int[] seq, @NonNull @NonNull XConsumer2<java.lang.Integer,java.lang.Integer> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull long[] seq, @NonNull @NonNull XConsumer2<java.lang.Long,java.lang.Integer> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull float[] seq, @NonNull @NonNull XConsumer2<java.lang.Float,java.lang.Integer> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull double[] seq, @NonNull @NonNull XConsumer2<java.lang.Double,java.lang.Integer> func)
-
forEach
public static void forEach(@NonNull @lombok.NonNull boolean[] seq, @NonNull @NonNull XConsumer2<java.lang.Boolean,java.lang.Integer> func)
-
forEach
public static <V> void forEach(@NonNull @NonNull V[] seq, @NonNull @NonNull XConsumer2<V,java.lang.Integer> func)
-
forEach
public static <V> void forEach(@NonNull @NonNull java.lang.Iterable<V> seq, @NonNull @NonNull XConsumer2<V,java.lang.Integer> func)
-
-