Java基础第十六天--File类及递归

来源:互联网 发布:mysql 自动开启事件 编辑:程序博客网 时间:2024/06/08 02:39

File类
1.  File类的构造方法
 1)File(String pathname):根据给定的路径构造File对象
 2)File(String parent, String child):根据给定的父目录和子目录或者文件来构造File对象
 3)File(File parent, String child)

2. File类的功能
 1) 创建功能
  创建文件  public boolean createNewFile() throws IOException
      如果文件存在,就不创建,返回false。否则创建文件,返回true
  创建文件夹 方式1:public boolean mkdir()
     方式2:public boolean mkdirs() --创建多级文件夹
 2) 删除功能  public boolean delete()  --删除文件或文件夹
  删除一个带内容的目录,必须先删除里面所有的内容,最后才能删除目录
 3) 判断功能  
  判断File对象是否存在:  public boolean exists()
  判断File对象是否是文件  public boolean isFile()
  判断File对象是否是文件夹  public boolean isDirectory()
  判断File对象是否可读   public boolean canRead()
  判断File对象是否可写   public boolean canWrite()
  判断File对象是否隐藏   public boolean isHidden()
 4) File类的重命名问题  把当前File对象的表示为新的File对象
  public boolean RenameTo(File dest)
  当两次的File对象在同一个路径下,就是重命名
  当两次的File对象不再同一个路径下,就是剪切功能
 5) 基本获取功能
  获取File对象的绝对路径 public String getAbsolutePath()  
  获取File对象的相对路径 public String getPath()
  获取File对象的名称  public String getName()
  获取File对象文件的大小 public long length() --字节为单位
  获取File对象最后一次修改时间的毫秒值 public long lastModified() --毫秒值
 6) 高级获取功能  
  public String[] list():显示当前指定目录下所有文件或文件夹的名称
  public File[] listFiles():返回指定路径下所有文件或者文件夹的File数组
  
3. File过滤器
 1)public File[] listFiles(FilenameFilter filter):根据过滤器获取指定目录下所有File对象数组
    FilenameFilter接口 --> boolean accept(File dir, String name);
    dir是目录文件路径 name是文件或文件夹名字  重写这个方法
    测试指定文件是否应该包含在某一文件列表中 包含返回true,否则返回false
 
 2)public String[] list(FilenameFilter filter):根据过滤器获取指定目录下所有名称数组
 
4. 递归:方法定义中调用方法本身的现象
 注意:1)递归一定要有出口-->StackOverflowError
    2)递归的次数不能过多 否则也会有内存溢出
    3)构造方法不能递归调用
   
 递归两大条件
 1. 出口
 2. 规律
 3. 通过断点观察递归执行顺序

0 0
原创粉丝点击