Java 8 stream流中map和flatMap有什么区别呢?

java-教程王 Java每日一问 发布时间:2022-04-12 14:22:26 阅读数:9997 1
下文笔者将讲述java8中stream流下的map和flatmap的区别,如下所示
此处的map和flatMap都是Stream流接口中的方法,
下文笔者将讲述map和flatMap方法的功能,如下所示:
img

map方法的功能

map方法的功能:
    对流中所有元素进行类型转换
例:

flatMap方法的功能

flatMap的功能:
     flatMap即对流中每个元素进行平铺后,形成多个流合在一起
例:
package com.java265.other;
import java.util.Arrays;
import java.util.list;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class Test16 {
	/**
	 * java265.com 示例程序
	 * 
	 * @throws Exception
	 */
	public static void main(String[] args) throws Exception {
		 
		List<String> list = Arrays.asList("a", "b", "c", "d");
		List<String> list2 = list.stream().map(e -> e.concat(",")).collect(Collectors.toList());
		list2.forEach(System.out::print);

		// flatmap的示例分享
		String[] arr1 = { "a", "b" };
		String[] arr2 = { "c", "d" };
		String[] arr3 = { "e", "f" };
		List<String> list3 = Stream.of(arr1, arr2, arr3).flatMap(Arrays::stream)
				.collect(Collectors.toList());
		list3.forEach(System.out::print);
	}
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaProblem/202204/2848.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者