Lambda 表达式 Lambda 表达式是 JDK8 的新特性。它可以替代大多数匿名内部类,编写更优雅的Java代码。
特别是在集合遍历和其他集合操作中,它非常有用。极大优化代码结构。
JDK还提供了大量内置的函数接口供我们使用,使得Lambda表达式的使用更加方便高效。为了快速开始,让我们看一个没有 Lambda 表达式的示例: 代码语言:javascript copy public static void main(String[] args) throws Exception { Runnable runnable = new Runnable() { @Override public void run() { System.出去。
println("你好世界"); } }; runnable.run();之前,如果我们需要运行一个线程,我们需要实现一个匿名类来运行Lambda表达式: 代码语言: javascript copy public static void main( String[] args) throws Exception { Runnable runnable = ()->System. out.println("你好世界"); runnable.run();可以看到代码简化了很多,直接通过Lambda表达式实现 带有run方法的匿名类 在学习Lambda表达式的时候,我总是有一个疑问:为什么Lambda表达式能够知道它定义的方法是run呢?如果一个接口有多个方法,Lambda表达式怎么知道呢?实施哪种方法?显然,如果有多个方法,Lambda表达式就会出错,所以Lambda表达式本身用于函数式接口。函数式接口只包含一个抽象方法接口,称为函数。
界面。该接口可以使用@FunctionalInterface 来声明。
如果不满足条件,就会报错。可以通过该方法来判断是否是函数式接口。
你可以阅读另一篇文章:3部分语法结构来实现: 代码语言:javascript copy(x) -> {}(x) 第一部分是参数,意思是传入的参数需要声明和定义,类似到方法的形式参数声明。如果没有参数,可以省略 -> Lambda 表达式运算符 {} 语句块,表示具体实现的方法代码,如果只有一行,可以省略 {}。
语法格式1、带参数、返回值、多行代码代码语言:javascript copy public static void main(String[] args) throws Exception { Comparator comparator = (Integer x,Integer y) -> { System. out.println("函数接口"); return Integer.compare(x, y); }; System.out.println(comparator.compare(1,2)) ; } 语法格式二,无参数,无返回值,一行语句代码语言: javascript copy public static void main(String[] args) throws Exception { Runnable runnable = ()->System.out.println("hello world" ); runnable.run(); } 一行语句可以省略 {} 语法格式三,有一个参数代码语言: javascript copy public static void main(String[] args) throws Exception { Consumer func = s -> System .out.println( s); func.accept("你好世界";);当只有一个参数时,可以省略括号。语法格式4,一行语句有返回值代码语言: javascript copy public static void main(String[] args) throws Exception { Comparator comparator = (x, y ) -> Integer.compare(x, y ); System.out.println(comparator.compare(1,1));当只有一行语句时,可以省略return,直接返回语法格式5。
形式参数类型可以省略。
站长声明
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件
举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
相关文章
-
7月16日,陕西中天火箭科技股份有限公司(简称“中天火箭”)首发上市申请获批经中国证监会批准并在深圳证券交易所中小板挂牌上市。 至此,西安市A股上市公司加上入选层级总数已升至42家。 中天火箭成立于2018年8月,主要从事小型固体燃料电池的研发、生产和销售。 火箭及其延
06-18
-
中国人民银行行长易纲4月20日在博鳌亚洲论坛“金融支持碳中和圆桌会议”上表示,我国的绿色发展金融发展仍存在一些问题。 例如,一些资产的价格并不能充分反映环境的负外部性。 一方面,部分企业的环境信息尚未有效披露,另一方面,不少行业尚未纳入碳定价。 央行将要求金融机
06-18
-
在已公布财报的科技公司中,不少公司增速放缓甚至下滑。 美国经济日渐复苏,科技行业却出人意料地陷入衰退。 据《洛杉矶时报》网络版报道,自2016年苹果推出iPhone并引发科技行业长达六年的繁荣后,如今的科技行业在美国经济复苏进程中处于不同寻常的地位。 成了落后
06-18
-
据11月24日消息,神州数码刚刚在香港联交所宣布,其非全资子公司神州数码信息服务拟在境内上市。 神州数码信息服务有限公司隶属于神州数码控股有限公司,是国内提供IT规划咨询、解决方案设计与实施、全生命周期综合IT服务的综合IT服务提供商应用开发与测试、系统集成与运
06-17
-
据投资界8月16日消息,全区首支青年科技创新基金“宁夏希望”由团宁夏回族自治区团委、宁夏青少年发展基金会共同发起设立。 工程青年科技创新基金于近日正式揭牌,基金规模为1万元。 据介绍先生,为了给青少年打造发展平台,激励和引导青少年加快宁夏科技创新发展,宁夏希望
06-17
-
欢迎订阅《全球财经24小时》系列文章,动动你的小指头,帮助我们更好更快的获取资讯送给您~点击此处输入表格摘要。 今日全球市场共发生19起投资披露事件,其中境内10起,境外9起。 其中,国内先进制造业4例,人工智能行业1例,医疗健康行业2例,企业服务业1例,传统制造业2例
06-17
-
3月22日,渠道猎聘集团(0.HK)发布第四季度及全年业绩绩效报告。 财报显示,公司全年实现营收22.8亿元。 其中,第四季度营收6.3亿元,成功转正。 全年调整后营业利润为人民币1.39亿元。 四季度收入和应收账款双正转,不仅体现了宏观经济的逐步复苏和产业结构的持续优化,也是
06-18
-
近日,华为与清华大学签署科技合作框架协议。 双方将共同在核心关键技术领域进行5至10年的长期研究,产生领先的创新成果。 研究成果。 6月3日,华为技术有限公司(以下简称“华为公司”)董事、战略研究院院长徐文伟一行访问清华大学。 双方签署科技合作框架协议。 据介绍,
06-06
-
【投资行业动态】昨天,普华永道发布《企业并购年末回顾与年前瞻报告》,披露了境内并购交易、境内外战略投资、并购等情况私募股权基金。 报告显示,与上半年相比,下半年全国并购交易活动更加活跃,交易笔数环比增长超过40%下半年。 全年中国境内并购交易数量和交易金额
06-18
-
2023年12月27日投融资事件汇总及详情,欢迎订阅《全球财经24小时》系列文章,动动小指为我们助力更好更快地获取信息 带给您~ 点击此处输入表格摘要。 今日全球市场共发生25起投资披露事件,其中境内20起,境外5起。 其中,国内先进制造业4起,企业服务业1起,生活服务业2起,
06-18
-
张小龙年初的几句话引起了大家对网页应用和微信应用市场的期待和向往:“目前我们(微信团队)正在开发第三种微信公众号——“申请号”。 就像订阅号为用户提供订阅内容、服务号为用户提供服务一样,“应用号”为用户提供“应用”,也就是App的功能。 ”张小龙正式揭晓微信的
06-18
-
AR衍射光波导和衍射光栅供应商志歌科技宣布完成数千万元A轮融资,由中芯聚源领投,其中方广资本、青空银杏也参与投资,本轮募集资金将用于固定资产建设、团队扩充和持续研发投入。
06-17
最新文章
【玩转GPU】ControlNet初学者生存指南
【实战】获取小程序中用户的城市信息(附源码)
包雪雪简单介绍Vue.js:开学
Go进阶:使用Gin框架简单实现服务端渲染
线程池介绍及实际案例分享
JMeter 注释 18 - JMeter 常用配置组件介绍
基于Sentry的大数据权限解决方案
【云+社区年度征文集】GPE监控介绍及使用