返回非隐藏文件

在 Java 8 之前,此方法将用于创建隐藏文件列表:


    File[] hiddenFiles = new File("./directory/").listFiles(new FileFilter() {

        public boolean accept(File file) {

            return file.isHidden();

        }

    });

在 Java 8 中,这可以缩短为:


File[] hiddenFiles = new File("./directory/").listFiles(File::isHidden);

在原始代码中返回非隐藏文件是一个微不足道的变化:return file.!isHidden();作为return file.isHidden();. 我无法在一行中重新创建此功能。


isNotHiddenFile 类中没有函数。不创建一个(或不遵循原始的、更冗长的代码),有没有办法使用新的单行样式重新创建它?


肥皂起泡泡
浏览 140回答 2
2回答

梵蒂冈之花

这个怎么样,File[] hiddenFiles = new File("c:/data").listFiles(f -> !f.isHidden());

湖上湖

进入 java-11 Predicate.not,在那之前你不能通过方法引用Predicate.not(File::isHidden)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java