内部类的n种写法

news/发布时间2024/5/20 19:43:46

最近在学习java,在实现接口的时候常常因为不够偷懒而被idea打脸。

举个例子,File.listFiles()需要一个实现FileFilter的类

刚开始,萌新的我:咦,我的myFileFilter下面怎么有条黄线?

private class myFileFilter implements FileFilter{@Overridepublic boolean accept(File pathname) {return pathname.isDirectory();}}
File[] s = file.listFiles(new myFileFilter());

学了匿名内部类之后

File[] s = file.listFiles(new FileFilter() {@Overridepublic boolean accept(File pathname) {return pathname.isDirectory();}});

ok,简化了不少,但是new怎么变黑了,难道new可以不写?

指针停在上面,idea说可以被lambda取代

原来在接口只有一个方法需要实现方法的时候可以有一个更简化的写法

 File[] s = file.listFiles((File pathname) -> pathname.isDirectory());

lambda表达式

但是pathname.isDirectory()还是有黄线

好吧,当只需要返回参数的一个方法值的时候只用写类名:方法名

File[] s = file.listFiles(File::isDirectory);

这就是我目前接触到的四种写法,欢迎在下面补充

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ulsteruni.cn/article/27164334.html

如若内容造成侵权/违法违规/事实不符,请联系编程大学网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

Pset_BuildingUseAdjacent

Pset_BuildingUseAdjacent 相邻建筑用途:提供有关相邻建筑及其用途的信息,以确定其对感兴趣建筑的影响。请注意,对于所使用的属性集的每个实例,如果存在风险,则将存在属性集Pset_risk(q.v)的一个实例。NameTypeDescriptionMarketCategory P_SINGLEVALUE / IfcLabelMarke…

Linux 文件目录配置及命令总结

前言 在Linux中,一切皆文件,而每一个文件和目录都是从根目录开始的 Linux文件目录的作用/bin目录:用来存放二进制可执行命令的目录,用户常用的命令都存在该目录下。 /sbin目录:用来存放二进制可执行文件,这里面的命令只供系统管理员,管理系统使用(root用户)。 /dev目录:…

文件合并小工具

可以搜索工具所在目录下的所有指定扩展名文件,并将文件合并成一个大文件,同时生成索引头文件 首次使用会自动生成配置文件. 配置说明如下:扫描扩展名=.bin.FON   <<<<<<<<<<<<<<<<<要合并的文件的扩展名固件输出路径=\me…

建行POS更新操作流程

建行POS更新操作流程 1.退出应用,直接进入“APP应用中心”,如图1所示。若进入系统原生桌面,则找到“APP应用中心”图标(如图2所示),点进进入。图1——APP应用中心图2——系统原生桌面2.点击带有NEW更新标识的“茂业收银台”应用,进入更新页面,点击页面最下方的更新按钮…

Go可以做到同等并发能力么?具体代码如何写?

原创 磊丰 Go语言圈 2023-09-05 08:30 发表于广东 收录于合集#学Go语言哪些事儿231个MySQL大牛 带你全面剖析与系统梳理数据库(mysql等)知识分享,总结数据库技巧和方法,提升你的技术技能。 45篇原创内容公众号JetBrains全家桶正式版激活码&账号开通授权,支持版本升级 ht…

【算法】十一月阳光下的阴影面积

十一月的阳光透过窗户,照射在一位笑起来甜美、青春洋溢的女子的办公桌上。小悦,一个总是以高马尾造型亮相的软件工程师,展现出她的干练与活力。那乌黑亮丽的长发轻盈飘动,仿佛在诉说着她的独特魅力。她的眉眼如画,那双明亮的眼睛里闪烁着对知识的渴望和对技术挑战的热情。…