首页 > 其他分享 >Stream流中的flatMap

Stream流中的flatMap

时间:2023-03-21 18:37:36浏览次数:47  
标签:toList flatMap Stream stream Arrays 流中 Optional


@Test
void contextLoads() {
// 字符串判NULL
List<Optional<String>> list = Arrays.asList (
Optional.of("A"),
Optional.empty(),
Optional.of("B"));
list.stream().flatMap(o->o.isPresent() ? Stream.of(o.get()) : Stream.empty()).collect(Collectors.toList());

// flatMap合并
List<Integer> lists = Stream.of(Arrays.asList(1, 2, 3), Arrays.asList(4, 5))
.flatMap(test -> test.stream()).collect(Collectors.toList());
}
# 简介

flatMap() 这个方法主要是合并集合

# 举栗子

一个数组是:[1,2,3],另外一个对象是:[4,5]
使用Stream.of(lists).flatMap(n -> n.stream()).collect(Collections.toList())
之后出现一个新数组:[1,2,3,4,5]

 

标签:toList,flatMap,Stream,stream,Arrays,流中,Optional
From: https://blog.51cto.com/u_16021118/6140771

相关文章

  • postman 请求格式无效: application/octet-stream
    #情景今天在使用postman做接口测试的时候,发现有如上报错信息#解决由于当前使用的请求方式为post然后有一个参数,我就直接卸载params里面了,这种是类似于get请求方式,直接在请......
  • 还在stream中使用peek?不要被这些陷阱绊住了
    简介自从JDK中引入了stream之后,仿佛一切都变得很简单,根据stream提供的各种方法,如map,peek,flatmap等等,让我们的编程变得更美好。事实上,我也经常在项目中看到有些小伙伴会经......
  • Java stream sorted自定义排序规则实现多字段排序
      Stream提供了丰富的操作(中间操作和终端操作)集合元素的轮子,但Stream流操作不影响原始集合数据,执行结果是一个新的集合对象。在《Javastreamsorted使用Comparator进......
  • Stream 总结
    1前言Stream是Java8中为方便操作集合及其元素而定制的接口,它将要处理的元素集合看作一种流,对流中的元素进行过滤、排序、映射、聚合等操作。使用StreamAPI,就好像使......
  • 关于java stream流中的peek方法和foreach的自我理解:
    场景:我需要在数据库中将信息查出,在将其转化为某一个对象,再将该对象进行添加进入list集合 我首先想到的是stream().peek()方法,编写的代码如下:productAtt......
  • Android中怎样使用createTempFile实现将字节数据创建到临时文件并转换成FileOutputStr
    场景在接收到音频文件的字节数组之后,需要将其临时存储在手机的某个路径下并将其转换为FileOutpurStream和FileInputStream提供给MediaPlayer进行播放。如果指定音频文件的存......
  • EMQX+HStreamDB 实现物联网流数据高效持久化
    在IoT场景中,通常面临设备数量庞大、数据产生速率高、累积数据量巨大等挑战。因此,如何接入、存储和处理这些海量设备数据就成为了一个关键的问题。EMQX作为一款强大的​​......
  • Socket 中运用 BufferedStream 类(转载)
    下面的代码示例演示如何使用 BufferedStream 类,而使用 NetworkStream 类来提高某些I/O操作的性能。在启动客户端之前,在远程计算机上启动服务器。启动客户端时,将远......
  • Java 集合(泛型 Stream)
    1.泛型JDK5开始出现了泛型的使用泛型符号可以应用在类,接口,方法的声明处,起到一个占位符的作用,先占个位置,给引用类型占个位置;泛型符号名称和个数无要求;TtypeE......
  • 不可变集合和Stream流
    不可变集合1.不可变集合的特点定义完成后不可以添加,删除和修改2.不可变集合的优点更安全,更效率3.如何创建可以用List,Set,Map接口种,都存在的of方法创建不可变集合......