2 u010380360 u010380360 于 2016.04.26 09:36 提问

java文件过滤器里的lambda表达式问题
 import java.io.File;
public class FileNameTest
{
    public static void main(String[] args) {
        File file = new File(".");
        String[] nameList =  file.list((dir, name) -> name.endsWith(".java")||new File(name).isDirectory());
        for(String name:nameList)
        {
            System.out.println(name);
        }
    }
}

这个程序里面,lambda表达式那里new File(name).isDirectory作用是什么呢?直接以".java"结尾不可以吗?

4个回答

yu954663801
yu954663801   2016.04.26 09:47

你能保证文件夹不会是.java结尾的吗?最好是先判断是文件还是目录,然后判断type。

bdmh
bdmh   Ds   Rxr 2016.04.26 09:42

没什么,就当是一个普通的代码而已,new一个File对象,判断路径是否是文件夹

laotansuocai
laotansuocai   2016.04.26 09:45

new File(name).isDirectory 判断文件是否是文件夹,name.endsWith(".java")判断是否是以".java"结尾的文件

u010380360
u010380360   2016.04.26 10:25

明白了,谢谢大家了!

Csdn user default icon
上传中...
上传图片
插入图片