Java中如何使用流(stream)操作数组呢?
下文笔者讲述stream操作array的方法分享,如下所示
由于流在jdk8中使用的非常普遍,使代码更加简洁,
那么数组这种集合对象是否可以使用stream对其进行操作呢?
下文笔者将一一道来,如下所示
由于流在jdk8中使用的非常普遍,使代码更加简洁,
那么数组这种集合对象是否可以使用stream对其进行操作呢?
下文笔者将一一道来,如下所示
实现思路: 我们只需使用Array.stream 即可将一个数组集合转换为stream 然后就可对其进行操作 如下所示例:
int sum = Arrays.stream(arrs) .sum(); //一旦转换为stream后,就可以使用stream对象的所有方法 如: map,reduce,filter,max,min,distinct等 //例 两个相同数组相乘 //定义两个相同长度的数组 int[] a = ... int[] b = ... int[] result = new int[a.length]; // Array.stream(a).range(0, a.length) .forEach(i -> result[i] = a[i] * b[i]); 或 int[] result = Array.stream(a).range(0, a.length) .map(i -> a[i] * b[i]).toArray();
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。