会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
躺柒
博客园
首页
新随笔
联系
订阅
管理
随笔 - 787
文章 - 0
评论 - 17
阅读 -
48963
读Java8函数式编程笔记01_Lambda表达式
合集 - 读Java8函数式编程(9)
1.
Java8函数式编程读后总结与感想
2023-02-11
2.
读Java8函数式编程笔记01_Lambda表达式
2023-01-26
3.
读Java8函数式编程笔记02_流
2023-01-27
4.
读Java8函数式编程笔记03_高级集合类和收集器
2023-01-28
5.
读Java8函数式编程笔记04_类库
2023-01-29
6.
读Java8函数式编程笔记05_数据并行化
2023-01-30
7.
读Java8函数式编程笔记06_Lambda表达式编写并发程序
2023-01-31
8.
读Java8函数式编程笔记07_设计和架构的原则
2023-02-01
9.
读Java8函数式编程笔记08_测试、调试和重构
2023-02-02
1.
Java 8函数式编程
1.1.
没有单子
1.2.
没有语言层面的惰性求值
1.3.
没有为不可变性提供额外支持
1.4.
集合类可以拥有一些额外的方法:default方法
2.
现实世界中,数据和行为并存
2.1.
面向对象编程是对数据进行抽象
2.2.
函数式编程是对行为进行抽象
3.
函数式编程
3.1.
在思考问题时,使用不可变值和函数,函数对一个值进行处理,映射成另一个值
3.2.
关心的是如何写出好代码,而不是符合函数式编程风格的代码
3.3.
使用Lambda表达式,就是将复杂性抽象到类库的过程
4.
匿名内部类
4.1.
目的
4.1.1.
为了方便Java程序员将代码作为数据传递
4.2.
传入一个实现某接口的对象
4.3.
显式地声明参数类型
5.
Lambda表达式
5.1.
一个匿名方法,将行为像数据一样进行传递
5.1.1.
一种紧凑的、传递行为的方式
5.1.2.
传入了一段代码块——一个没有名字的函数
5.1.3.
无需指定类型,程序依然可以编译
5.2.
形式
5.2.1.
不包含参数,使用空括号()表示没有参数
5.2.2.
包含且只包含一个参数,可省略参数的括号
5.2.3.
可以是一段代码块,使用大括号({})将代码块括起来
5.2.4.
包含多个参数的方法
5.2.5.
显式声明参数类型,此时就需要使用小括号将参数括起来,多个参数的情况也是如此
5.3.
常见结构
5.3.1.
BinaryOperator
add=(x, y) → x+y
5.4.
引用值,而不是变量
5.4.1.
将变量声明为final
5.4.1.1.
意味着不能为其重复赋值
5.4.1.2.
是在使用赋给该变量的一个特定的值
5.4.1.3.
Java8可以引用非final变量,但是该变量在既成事实上必须是final
5.4.2.
未赋值的变量与周边环境隔离起来,进而被绑定到一个特定的值
5.4.2.1.
闭包
5.5.
Lambda表达式的类型依赖于上下文环境,是由编译器推断出来的
5.6.
目标类型是指Lambda表达式所在上下文环境的类型
6.
函数接口
6.1.
只有一个抽象方法的接口
6.2.
Lambda表达式本身的类型
6.3.
接口中单一方法的命名并不重要,只要方法签名和Lambda表达式的类型匹配即可
6.3.1.
为参数起一个有意义的名字,增加代码易读性
6.4.
7.
类型推断
7.1.
程序依然要经过类型检查来保证运行的安全性,但不用再显式声明类型罢了
7.2.
省略类型信息可以减少干扰,更易弄清状况
7.3.
需要类型信息帮助理解代码
7.4.
一开始类型信息是有用的,但随后可以只在真正需要时才加上类型信息
合集:
读Java8函数式编程
好文要顶
关注我
收藏该文
微信分享
躺柒
粉丝 -
50
关注 -
0
+加关注
0
0
升级成为会员
«
上一篇:
编程与类型系统读后总结与感想
»
下一篇:
读Java8函数式编程笔记02_流
posted @
2023-01-26 07:26
躺柒
阅读(
76
) 评论(
0
)
编辑
收藏
举报
刷新页面
返回顶部
登录后才能查看或发表评论,立即
登录
或者
逛逛
博客园首页
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
相关博文:
·
读Java8函数式编程笔记06_Lambda表达式编写并发程序
·
读Java实战(第二版)笔记02_行为参数化Lambda表达式
·
【JDK 8-Lambda】3.1 Java高级核心玩转 JDK8 Lambda 表达式
·
java-函数式编程
·
【java8新特性】01:函数式编程及Lambda入门
阅读排行:
·
一个费力不讨好的项目,让我损失了近一半的绩效!
·
清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
·
实操Deepseek接入个人知识库
·
CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
·
Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
公告
昵称:
躺柒
园龄:
2年1个月
粉丝:
50
关注:
0
+加关注
<
2025年2月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
合集
学信息系统项目管理师第4版(35)
学系统集成项目管理工程师(中项)(43)
读高性能MySQL(第4版)(21)
读发布!设计与部署稳定的分布式系统(第2版)(34)
随笔及总结(26)
读改变未来的九大算法(10)
读数据压缩入门(11)
读C#代码整洁之道(8)
读编程与类型系统(12)
读函数式编程思维(6)
读Java8函数式编程(9)
读Java实战(第二版)(20)
读Java性能权威指南(第2版)(31)
读SQL进阶教程(17)
选读SQL经典实例(23)
读SQL学习指南(第3版)(13)
读图数据库实战(11)
读程序员的制胜技(15)
读像火箭科学家一样思考(16)
读程序员的README(19)
读算法霸权(13)
读元宇宙改变一切(14)
读AI3.0(10)
读千脑智能(13)
读十堂极简人工智能课(9)
读人工不智能:计算机如何误解世界(10)
读算法的陷阱:超级平台、算法垄断与场景欺骗(20)
读所罗门的密码(21)
读天才与算法:人脑与AI的数学思维(26)
读人工智能时代与人类未来(19)
读AI未来进行式(12)
读AI新生:破解人机共存密码(18)
读人工智能全传(16)
读写给大家的AI极简史(7)
读零信任网络:在不可信网络中构建安全系统(21)
读软件开发安全之道:概念、设计与实施(17)
读软件设计的要素(7)
读构建可扩展分布式系统:方法与实践(16)
读数据湖仓(9)
读数据工程之道:设计和构建健壮的数据系统(34)
读数据质量管理:数据可靠性与数据质量问题解决之道(20)
读数据保护:工作负载的可恢复性(31)
读量子霸权(18)
读算法简史:从美索不达米亚到人工智能时代(15)
读当我点击时,算法在想什么?(7)
读DAMA数据管理知识体系指南(3)
更多
随笔档案
2025年2月(24)
2025年1月(31)
2024年12月(31)
2024年11月(30)
2024年10月(31)
2024年9月(30)
2024年8月(31)
2024年7月(31)
2024年6月(30)
2024年5月(31)
2024年4月(30)
2024年3月(31)
2024年2月(29)
2024年1月(31)
2023年12月(31)
2023年11月(30)
2023年10月(31)
2023年9月(30)
2023年8月(31)
2023年7月(31)
2023年6月(30)
2023年5月(31)
2023年4月(31)
2023年3月(36)
2023年2月(28)
2023年1月(26)
阅读排行榜
1. C#代码整洁之道读后总结与感想(599)
2. 选读SQL经典实例笔记01_检索和排序(369)
3. 读C#代码整洁之道笔记01_C#的编码标准和原则(311)
4. 读C#代码整洁之道笔记04_重构C#代码识别代码坏味道(309)
5. 学信息系统项目管理师第4版系列02_法律法规(268)
评论排行榜
1. 2023年1月随笔(11)
2. 2023年10月随笔之婚宴趣事多(2)
3. 读高性能MySQL(第4版)笔记12_查询性能优化(下)(2)
4. 读Java性能权威指南(第2版)笔记18_垃圾回收E(2)
推荐排行榜
1. 读高性能MySQL(第4版)笔记01_MySQL架构(上)(2)
2. 选读SQL经典实例笔记01_检索和排序(2)
3. 读软件设计的要素01概念(1)
4. 读AI未来进行式笔记01深度学习(1)
5. 读所罗门的密码笔记01_当人类遇见机器(1)
最新评论
1. Re:2023年10月随笔之婚宴趣事多
@gz4621 wondershare mindmaster...
--躺柒
2. Re:2023年10月随笔之婚宴趣事多
大神 思维导图用的什么软件制作的?
--gz4621
3. Re:读高性能MySQL(第4版)笔记12_查询性能优化(下)
@东围居士 建议读新版。...
--躺柒
4. Re:读高性能MySQL(第4版)笔记12_查询性能优化(下)
第4版相比第3版好像缩减了好多内容?楼主推荐第3版还是第4版
--东围居士
5. Re:读Java性能权威指南(第2版)笔记18_垃圾回收E
@屠炉 没有用第三方工具,手动的。 有几个平台直接支持markdown导入,只是要调整一下图片上传即可。...
--躺柒
点击右上角即可分享
支持DeepSeek的编程助手
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库