FlatMap和map的区别(flatmap与map的区别)

  本篇文章为你整理了FlatMap和map的区别(flatmap与map的区别)的详细内容,包含有flatmap和map的区别 scala flatmap与map的区别 flatmap与map怎么都理解不了 map和filter有啥区别 FlatMap和map的区别,希望能帮助你了解 FlatMap和map的区别。

  返回一个流,流里的元素是,原流元素经常函数处理的结果。

  也可以理解为将原流的元素,通过function进行处理后替换。

  flatMap

  返回一个流,先将流的元素通过指标函数映射,再合并一个流。

  遇到问题的情况

  通过数据库分组查询出一个对象的集合,对象的billId根据分组条件进行group_concat进行拼接,导致返回的对象数据里,存在数据billId属性的值为 billId,billId...类似的字符串,现在需要遍历集合收集成一个billId的list集合。

  

list.add(new String[]{"1","2,3","4,5,6"})

 

  list.add(new String[]{"7,8","9"})

  List String billIds = list.stream()

   .map(bill - bill.getBillId().split(","))

   .flatMap(Arrays::stream)

   .collect(Collectors.toList());

  //billIds输出为

  //1,2,3,4,5,6,7,8,9

  

 

  拿上述例子说明:

  map是将原来的对象流通过function将billId分割为字符串数组

  flatMap是将字符串数据流每个元素进行流化操作,再将这些流放到一起形成一个字符串流

  以上就是FlatMap和map的区别(flatmap与map的区别)的详细内容,想要了解更多 FlatMap和map的区别的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: