map: 对流中的数据进行映射,用新的数据替换旧的数据。
map最主要,就是来做元素的替换。其实map是一个元素的映射。
flatMap也是元素的映射,flatMap是扁平化映射。
String[] strs = { "hello", "world" }; // 这里是一个直接映射,将流中的元素(字符串),替换成了由这个字符串分解出来的字符数组。 // 在映射结束后,流中的数据依然是两个,分别是两个字符数组 Arrays.stream(strs).map(String::toCharArray).forEach(ele -> System.out.println(Arrays.toString(ele))); // flatMap: 扁平化映射 // 常用于map直接映射完成后,流中的数据是一个个的容器,而我们需要对容器中的元素进行处 理 // 此时,可以使用扁平化映射,将容器中的元素直接存入流中 Arrays.stream(strs).map(str -> str.split("")) .flatMap(Arrays::stream) .distinct() .forEach(System.out::println);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)