一.File类
1.概述
File类就是文件和目录路径名的抽象表示形式。主要用于文件和目录的创建、查找和删除等操作。
File类可以表示一个文件也可以表示一个文件夹,我们可以通过操作File对象提供的相关方法对它所表示的文件/文件夹进行操作。
2.File类的构造方法
public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。public File(File parent, String child):从父抽象路径名和子路径名字符串创建新的 File实例。
File封装的对象仅仅是一个路径名。它可以是存在的,也可以是不存在的。存在可以操作,不存在可以创建。
3 File类的判断方法
public boolean exists() :此File表示的文件或目录是否实际存在。
public boolean isFile() :此File表示的是否为文件。
public boolean isDirectory() :此File表示的是否为目录。
4 File类的获取方法
public String getAbsolutePath() :返回此File的绝对路径名字符串。(带盘符的路径)
public String getPath():将此File转换为路径名字符串。 (获取的是 封装路径)
public String getName():返回由此File表示的文件或目录的名称。
public long length():返回由此File表示的文件的长度。 不能获取目录的长度。
5 相对路径和绝对路径
绝对路径:从盘符开始的路径,这是一个完整的路径。
相对路径:在IDEA中,是相对于 idea中的 project的路径!
6 File类的创建和删除方法
public boolean createNewFile():当且仅当具有该名称的文件尚不存在时,创建一个新的空文件。 public boolean delete():删除由此File表示的文件或目录。
public boolean mkdir():创建一个单级文件夹
public boolean mkdirs():创建一个多级文件夹。
7 .File类的遍历方法
public String[] list():返回一个String数组,存储的是File目录中所有的子文件或子目录的名称。public File[] listFiles() :返回一个File数组,存储的是File目录中所有的子文件或子目录的路径的File对象。
二.方法递归
1 递归的概述
生活中的递归: 放羊--赚钱--盖房子--娶媳妇--生娃--放羊--赚钱--盖房子--娶媳妇--生娃--放羊...
程序中的递归: 指在当前方法内调用自己的这种现象。
递归的注意事项:
递归要有出口(结束方法),否则会报栈内存溢出错
误StackOverflowError
递归次数不宜过多
2 递归求和
需求:定义方法,计算1 ~ n的累加和
3.递归获取文件夹下所有文件