7、Lambda表达式

简介: Lambda表达式又称匿名函数,语法为(参数)->表达式,本质是函数对象,用于行为参数化,如Stream API、QueryWrapper等场景。相比匿名内部类,Lambda更简洁,需配合函数式接口使用,且在运行时动态生成类,其this指向也与匿名内部类不同。

什么是 Lambda 表达式
文献中把 Lambda 表达式一般称作匿名函数,语法为(参数部分)->表达式部分
它本质上是一个函数对象
它可以用在那些需要将行为参数化的场景,例如Stream APl,MyBatisPlus的 QueryWrapper 等地方Lambda 与匿名内部类有何异同
它们都可以用于需要行为参数化的场景,Lambda 表达式必须配合函数式接口使用,而匿名内部类不必拘泥于数式接口,其它接口和抽象类也可Lambda 表达式比匿名内部类语法上更加简洁
匿名内部类是在编译阶段由程序员编写提供,而 Lambda 表达式是在运行阶段动态生成它所需的类【进阶】Lambda 中 this 含义与匿名内部类中的 this 不同

相关文章
|
6月前
|
缓存 网络协议 关系型数据库
核心原理:能否画张图解释下 RPC 的通信流程
RPC(远程过程调用)是一种实现分布式系统间透明通信的技术,屏蔽网络细节,让调用远程服务如同调用本地方法。其核心流程包括:参数序列化、网络传输、协议解析、反序列化及动态代理拦截,通过TCP传输确保可靠性,广泛应用于微服务、缓存、消息队列等场景,是现代应用架构的“经络”。
|
存储 JavaScript 容器
vuex的五个属性及使用方法示例
vuex的五个属性及使用方法示例
777 0
|
6月前
|
存储 算法 搜索推荐
线性结构检索:从数组和链表的原理初窥检索本质
本节深入解析数组与链表的存储特性及其对检索效率的影响。数组支持随机访问,适合二分查找,检索效率为O(log n);链表虽检索较慢,但插入删除高效,适用于频繁动态调整场景。通过改造链表结构,如结合数组提升检索性能,揭示了数据组织方式对检索的核心作用,帮助理解“快速缩小查询范围”这一检索本质。
|
6月前
|
缓存 安全 Java
Java基础
重载指方法名相同但参数不同,发生在编译期;重写指父子类中同名同参方法,发生在运行期。String不可变,StringBuilder非线程安全,StringBuffer线程安全,适用于多线程场景。
|
6月前
|
JavaScript
1.2 NodeJS安装
本节介绍Node.js的安装方法,可通过官网或本地安装包进行。安装时需选择无空格的英文路径,并参考手册完成。安装后通过“win+R→cmd→node -v”命令验证环境,能输出版本号即成功,版本无需与示例一致。
|
6月前
|
存储 缓存 JSON
ESLint 全指南:从原理到实践,构建高质量的 JavaScript/TypeScript 代码
本文系统讲解ESLint的核心原理、配置详解与工程化实践,涵盖AST工作机制、TypeScript集成、Prettier协作、性能优化及CI/CD全流程集成,助你构建统一、健壮的前端代码质量体系。(238字)
404 1
|
6月前
|
数据采集 JSON 数据处理
Python编程实战:从函数到模块化——创建自己的模块与包
Python模块化编程通过拆分代码为模块和包,提升项目可维护性与复用性。合理使用import、包结构、__init__.py及最佳实践,可构建清晰、高效的代码体系,助力项目从“能运行”迈向“易维护”。(238字)
379 0
|
6月前
|
SQL 弹性计算 安全
选购阿里云活动中的云服务器之后,后续购买并挂载云盘,设置密码及安全组教程参考
如果我们通过阿里云的活动购买云服务器,在选择配置参数的时候会发现通常情况下默认配置下只有系统盘,而没有数据盘。另外,还需要我们设置好云服务器的密码,配置安全组等基本操作之后才能使用。本文为大家展示当我们通过阿里云的活动购买完云服务器之后,后续购买挂载云盘及设置云服务器密码和安全组的相关流程,以供参考。
|
6月前
|
存储 缓存 Java
SpringBoot自动装配机制
SpringBoot通过@SpringBootApplication实现自动装配,其核心为@AutoConfigurationPackage与@AutoConfigurationImportSelector。前者注册主包路径,后者加载spring.factories中配置的自动配置类,结合@ComponentScan与过滤机制,实现Bean的自动扫描、去重与注入,简化开发配置。
573 1