Java学习Day15

2019-09-26  本文已影响0人  JayMeWangGL

今日学习内容总结


File类

绝对路径和相对路径

File的构造方法:

常用方法

获取功能的方法

判断功能的方法

创建删除功能的方法

目录的遍历

File file = new File("C:\\Program Files\\Java");
        String[] files = file.list();
        for (String f : files) {
            System.out.println(f);
        }

FileFilter过滤器

java.io.FileFilter是一个接口,是File的过滤器。 该接口的对象可以传递给File类的listFiles(FileFilter) 作为参数, 接口中只有一个方法。

boolean accept(File pathname) :测试pathname是否应该包含在当前File目录中,符合则返回true。

使用方法

  1. 接口作为参数,需要传递子类对象,可使用匿名内部类
  2. accept方法,参数为File,表示当前File下所有的子文件和子目录。保留住则返回true,过滤掉则返回false。
  3. 通过过滤器的作用,listFiles(FileFilter)返回的数组元素中,子文件对象都是符合条件的,可以直接打印。
    此方法也可以使用Lambda表达式进行简化

递归

概述

递归求和:

public class demo01 {
    public static void main(String[] args) {
        int num =10;
        System.out.println(plus(num));
    }

    public static int plus(int num){
        if(num==1) {
           return 1;
        }
        else {
            return num+plus(num-1);
        }
    }
}

递归加File遍历所有文件及文件夹:

public class demo03 {
    public static void main(String[] args) {
        File file = new File("C:\\Program Files\\Java");
        printFiles(file);
    }

    public static void printFiles(File file){
        File[] files = file.listFiles();
        for (File f : files) {
            System.out.println(f);
            if(f.isDirectory()){
                printFiles(f);
            }

        }
    }
}
上一篇 下一篇

猜你喜欢

热点阅读