Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

-java之Lambda函数式编程—-

背景

java 8 Lambda函数式编程,像阿里、腾讯这样的大互联网公司早就已经使用的技术。学习下jdk8的新特性,对提高开发效率和写出缺陷更低的代码都非常有好处,时代在进步编程语言也在进化。

学习目标

掌握java之Lambda函数式编程 filter、map等最常见用法;

参考样例代码你也可以写出自己的Lambda函数式代码;

代码举例

jdk1.8 Lambda函数式编程在应用开发中最常见的例子如下

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

测试数据准备

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

map

java之Lambda函数式编程

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

map+filter

java之Lambda函数式编程

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

map+object

java之Lambda函数式编程

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

map+entryset

java之Lambda函数式编程

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

optional

开发总结

  • filter 后面要是个boolean表达式,如 equals、>、<、contains
  • map 后面是返回的类型
  • filter、map后面都可以跟{你的逻辑,return boolean表达式或对象}
  • 集合后面点stream,然后filter在map,最后collect

filter和map我在加个图说明

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

map-filter

java之Lambda函数式编程

原理

我用图说明下原理

场景1普通循环代码

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

外迭代

场景1Lambda函数式编程,如上图

Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

内迭代

优点

回调函数是一个合法的Lambad表达式。Lambad有利于清理掉样板代码。

明确了要达成什么转化,而不是说明如何转化,这种方式潜在缺陷更少,更直接地表达了程序员的意图。

将代码重构得更加简洁易读,Lambad更符合java设计原则。

习惯这种链式操作,程序员们多练习吧。

如果觉得对你有帮助请关注收藏转发,有错误请指点,欢迎来交流

原文 

http://developer.51cto.com/art/201806/575549.htm

本站部分文章源于互联网,本着传播知识、有益学习和研究的目的进行的转载,为网友免费提供。如有著作权人或出版方提出异议,本站将立即删除。如果您对文章转载有任何疑问请告之我们,以便我们及时纠正。

PS:推荐一个微信公众号: askHarries 或者qq群:474807195,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

转载请注明原文出处:Harries Blog™ » Java之Lambda函数式编程最佳应用举例,链式语法「真干货来拿走」

分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址