java8中的map与flatmap

问题
假如我们有这样一个需求给定单词列表[“Hello”,“World”],你想要返回列表[“H”,“e”,“l”, “o”,“W”,“r”,“d”],如果我们使用java实现这个需求,你会怎么实现呢?可能我们第一个想法是下面这种写法:
words.stream() .map(word -> word.split("")) .distinct() .collect(toList());
但是如果我们运行会发现这样的写法是不正确的,这个方法的问题在于,传递给map方法的Lambda为每个单词返回了一个String[](String列表)。因此, map 返回的流实际上是Stream类型的。你真正想要的是用 Stream来表示一个字符流。因此,这是行不通的。
我们带着上面的问题进行下面的分析:
map和flatmap的区别
map:对于stream中包含的元素使用 特定的转换函数进行转换操作,新生成的St

java8中的map与flatmap最先出现在Python成神之路

版权声明:
作者:congcong
链接:https://www.techfm.club/p/26695.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>