Java 11中提供了一组强大的Stream API,使得我们可以更加方便地对集合进行过滤、排序、映射等操作。本文将介绍Java 11 Stream API的使用,包括创建Stream、中间操作、终止操作等内容。
10年的柯坪网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整柯坪建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“柯坪网站设计”,“柯坪网站推广”以来,每个客户项目都认真落实执行。
在Java 11中,可以通过多种方式创建Stream对象,包括从集合、数组、文件等数据源创建Stream。
可以使用Collection接口的stream()方法或parallelStream()方法从集合创建Stream。
以下是一个使用stream()方法从集合创建Stream的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
Stream stream = list.stream();
在上面的示例中,我们创建了一个名为list的List对象,并使用stream()方法从该List对象创建了一个Stream
可以使用Arrays类的stream()方法从数组创建Stream。
以下是一个使用stream()方法从数组创建Stream的示例:
int[] array = new int[] {1, 2, 3, 4, 5};
IntStream stream = Arrays.stream(array);
在上面的示例中,我们创建了一个名为array的int[]数组,并使用Arrays类的stream()方法从该数组创建了一个IntStream对象。
可以使用Files类的lines()方法从文件创建Stream。
以下是一个使用lines()方法从文件创建Stream的示例:
try {
Stream stream = Files.lines(Paths.get("filename.txt"));
} catch (IOException e) {
// handle exception
}
在上面的示例中,我们使用Files类的lines()方法从文件中读取每一行,并创建了一个Stream
在Java 11中,Stream API提供了多种中间操作,包括过滤、映射、排序等操作,这些操作不会立即执行,而是在终止操作时才会执行。
可以使用filter()方法对Stream中的元素进行过滤操作。
以下是一个使用filter()方法进行过滤操作的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
Stream stream = list.stream().filter(i -> i % 2 == 0);
在上面的示例中,我们使用filter()方法对Stream中的元素进行过滤操作,只保留其中的偶数。
可以使用map()方法对Stream中的元素进行映射操作。
以下是一个使用map()方法进行映射操作的示例:
List list = Arrays.asList("apple", "banana", "orange");
Stream stream = list.stream().map(s -> s.length());
在上面的示例中,我们使用map()方法对Stream中的字符串元素进行映射操作,将其转换为对应的长度。
可以使用sorted()方法对Stream中的元素进行排序操作。
以下是一个使用sorted()方法进行排序操作的示例:
List list = Arrays.asList("apple", "banana", "orange");
Stream stream = list.stream().sorted();
在上面的示例中,我们使用sorted()方法对Stream中的字符串元素进行排序操作,按照字典序进行排序。
可以使用distinct()方法对Stream中的元素进行去重操作。
以下是一个使用distinct()方法进行去重操作的示例:
List list = Arrays.asList(1, 2, 3, 2, 4, 5);
Stream stream = list.stream().distinct();
在上面的示例中,我们使用distinct()方法对Stream中的整数元素进行去重操作。
可以使用limit()方法对Stream中的元素进行截断操作。
以下是一个使用limit()方法进行截断操作的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
Stream stream = list.stream().limit(3);
在上面的示例中,我们使用limit()方法对Stream中的元素进行截断操作,只保留前三个元素。
可以使用skip()方法对Stream中的元素进行跳过操作。
以下是一个使用skip()方法进行跳过操作的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
Stream stream = list.stream().skip(2);
在上面的示例中,我们使用skip()方法对Stream中的元素进行跳过操作,跳过前两个元素。
可以使用parallel()方法将Stream转换为并行Stream,从而进行并行操作。
以下是一个使用parallel()方法进行并行操作的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
Stream stream = list.parallelStream().filter(i -> i % 2 == 0);
在上面的示例中,我们使用parallelStream()方法将Stream转换为并行Stream,并使用filter()方法进行过滤操作。
在Java 11中,Stream API提供了多种终止操作,包括计数、收集、归约等操作,这些操作会触发中间操作的执行,从而得到最终的结果。
可以使用count()方法对Stream中的元素进行计数操作。
以下是一个使用count()方法进行计数操作的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
long count = list.stream().count();
在上面的示例中,我们使用count()方法对Stream中的元素进行计数操作,得到Stream中元素的个数。
可以使用collect()方法对Stream中的元素进行收集操作,将其转换为List、Set、Map等集合类型。
以下是一个使用collect()方法进行收集操作的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
List result = list.stream().filter(i -> i % 2 == 0).collect(Collectors.toList());
在上面的示例中,我们使用filter()方法对Stream中的元素进行过滤操作,然后使用collect()方法将其转换为List类型。
可以使用reduce()方法对Stream中的元素进行归约操作,得到一个最终的结果。
以下是一个使用reduce()方法进行归约操作的示例:
List list = Arrays.asList(1, 2, 3, 4, 5);
int sum = list.stream().reduce(0, (a, b) -> a + b);
在上面的示例中,我们使用reduce()方法对Stream中的元素进行归约操作,将其求和得到最终的结果。
Java 11中的Stream API提供了一组强大的操作,可以方便地对集合进行处理。本文介绍了Java 11 Stream API的创建、中间操作和终止操作等内容,并提供了示例代码。希望本文能够帮助读者更好地理解Java 11 Stream API的使用。
本文名称:不要错过这个机会:学习Java8Stream,提升编码能力!
标题来源:http://www.shufengxianlan.com/qtweb/news6/79856.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联