IntStream类

是一个原始整数值序列,该流提供了许多方法可以对该流中的元素顺序执行或并行执行一些聚合操作

所属包:java.util.stream

 

注意事项

Stream API只能被消费一次,后续重复使用已建立的流会报异常!所以stream流是线程安全的

案例

    public static void main(String[] args) {
        IntStream intStream = IntStream.range(1, 5);
        intStream.forEach(System.out::println);

        IntStream intStream1 = IntStream.rangeClosed(1, 5);
        intStream1.forEach(System.out::println);//1234

        IntStream intStream2 = IntStream.rangeClosed(1, 3);
        int a = intStream2.sum();
        System.out.println(a);//12345

        IntStream intStream3 = IntStream.rangeClosed(5, 10);
        OptionalInt b = intStream3.min();//[5]

        IntStream intStream4 = IntStream.rangeClosed(1, 3);
        int[] c = intStream4.toArray();
    }
IntStream-API
Modifier and TypeMethod and Description
booleanallMatch(IntPredicate predicate)

返回此流的所有元素是否与提供的谓词匹配。

booleananyMatch(IntPredicate predicate)

返回此流的任何元素是否与提供的谓词匹配。

DoubleStreamasDoubleStream()

返回一个 DoubleStream由该流中的元素,转换为 double

LongStreamasLongStream()

返回一个 LongStream由该流的元素组成,转换为 long

OptionalDoubleaverage()

返回 OptionalDouble此流的元素的算术平均值的OptionalDouble,如果此流为空,则返回空的可选项。

Stream<Integer>boxed()

返回一个 Stream组成的这个流的元素,每个盒装到一个 Integer

static IntStream.Builderbuilder()

返回一个 IntStream的生成器。

<R> Rcollect(Supplier<R> supplier, ObjIntConsumer<R> accumulator, BiConsumer<R,R> combiner)

对此流的元素执行 mutable reduction操作。

static IntStreamconcat(IntStream a, IntStream b)

创建一个懒惰连接的流,其元素是第一个流的所有元素,后跟第二个流的所有元素。

longcount()

返回此流中的元素数。

IntStreamdistinct()

返回由该流的不同元素组成的流。

static IntStreamempty()

返回一个空的顺序 IntStream

IntStreamfilter(IntPredicate predicate)

返回由与此给定谓词匹配的此流的元素组成的流。

OptionalIntfindAny()

返回一个描述流的一些元素的OptionalInt如果流为空,则返回一个空的OptionalInt

OptionalIntfindFirst()

返回描述此流的第一个元素的OptionalInt如果流为空,则返回一个空的OptionalInt

IntStreamflatMap(IntFunction<? extends IntStream> mapper)

返回由通过将提供的映射函数应用于每个元素而产生的映射流的内容来替换该流的每个元素的结果的流。

voidforEach(IntConsumer action)

对此流的每个元素执行操作。

voidforEachOrdered(IntConsumer action)

对此流的每个元素执行一个操作,保证每个元素按遇到顺序处理,以便具有定义的遇到顺序的流。

static IntStreamgenerate(IntSupplier s)

返回无限顺序无序流,其中每个元素由提供的 IntSupplier

static IntStreamiterate(int seed, IntUnaryOperator f)

返回有序无限连续 IntStream由函数的迭代应用产生 f至初始元素 seed ,产生 Stream包括 seedf(seed)f(f(seed)) ,等

PrimitiveIterator.OfIntiterator()

返回此流的元素的迭代器。

IntStreamlimit(long maxSize)

返回由此流的元素组成的流,截断长度不能超过 maxSize

IntStreammap(IntUnaryOperator mapper)

返回由给定函数应用于此流的元素的结果组成的流。

DoubleStreammapToDouble(IntToDoubleFunction mapper)

返回一个 DoubleStream ,其中包含将给定函数应用于此流的元素的结果。

LongStreammapToLong(IntToLongFunction mapper)

返回一个 LongStream ,其中包含将给定函数应用于此流的元素的结果。

<U> Stream<U>mapToObj(IntFunction<? extends U> mapper)

返回一个对象值 Stream ,其中包含将给定函数应用于此流的元素的结果。

OptionalIntmax()

返回 OptionalInt此流的最大元素的OptionalInt,如果此流为空,则返回一个空的可选项。

OptionalIntmin()

返回 OptionalInt此流的最小元素的OptionalInt,如果此流为空,则返回一个空的可选项。

booleannoneMatch(IntPredicate predicate)

返回此流的元素是否与提供的谓词匹配。

static IntStreamof(int... values)

返回其元素是指定值的顺序排序流。

static IntStreamof(int t)

返回一个包含单个元素的顺序 IntStream

IntStreamparallel()

返回平行的等效流。

IntStreampeek(IntConsumer action)

返回由该流的元素组成的流,另外在从生成的流中消耗元素时对每个元素执行提供的操作。

static IntStreamrange(int startInclusive, int endExclusive)

返回有序的顺序 IntStreamstartInclusive (含)至 endExclusive通过增量步骤(独家) 1

static IntStreamrangeClosed(int startInclusive, int endInclusive)

startInclusive (含)的顺序排列 IntStreamendInclusive (含),增量步长为 1

OptionalIntreduce(IntBinaryOperator op)

使用 associative累积函数对此流的元素执行 reduction ,并返回描述减小值的 OptionalInt (如果有)。

intreduce(int identity, IntBinaryOperator op)

使用提供的身份值和 associative累积功能对此流的元素执行 reduction ,并返回减小的值。

IntStreamsequential()

返回顺序的等效流。

IntStreamskip(long n)

在丢弃流的第一个 n元素后,返回由该流的 n元素组成的流。

IntStreamsorted()

以排序顺序返回由该流的元素组成的流。

Spliterator.OfIntspliterator()

返回此流的元素的拼接器。

intsum()

返回此流中元素的总和。

IntSummaryStatisticssummaryStatistics()

返回一个 IntSummaryStatistics描述有关此流的元素的各种摘要数据。

int[]toArray()

返回一个包含此流的元素的数组。

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值