面试必知的java8新特性-stream

面试必知的java8新特性-stream

java作为开发语言中的元老已经度过了很多年,最新的java8为我们带来了一些新特性,这些特性可以在以后的工作中为我们的开发提供更多的便捷,现在就让我们看看最新的函数式编程风格怎么在实际的开发中使用。

原本在java中遍历集合也许你会使用以下代码:

面试必知的java8新特性-stream上面的代码没有什么问题也可以正常运行,只不过略显繁琐,在java8中我们还可以这样使用:

面试必知的java8新特性-streamjava8以前要统计list内的数据个数必须使用外部迭代的形式来操作,for循环其实是调用迭代接口进行 迭代而已,而java给我们提供了通过stream的方式简化操作,计数操作只需要直接调用stream的过滤操作后计数即可。

上面只是简单介绍了stream的filter方法,其实stream还提供了map、flatMap、max、min等方法

map提供了将list内数据转换的功能。数据转换在java8之前通常我们会将一个list内的数据转换后放入另一个list,现在在java8里我们只需要这么做:

面试必知的java8新特性-stream上图转换只需要一行代码就搞定了。

flatMap从字面意思和map很像,只不过可以将多个stream合并为一个stream再进行操作,flatMap方法返回值必须为stream。大概意思如下:

面试必知的java8新特性-stream

Max和Min方法就是通过stream找出比较出list内最大值和最小值,如下:

面试必知的java8新特性-stream


版权声明:程序员胖胖胖虎阿 发表于 2022年10月30日 下午1:00。
转载请注明:面试必知的java8新特性-stream | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...