黑马程序员技术交流社区

标题: 就业班JavaSE Day08 File类 递归笔记 [打印本页]

作者: 小北京    时间: 2018-11-26 16:23
标题: 就业班JavaSE Day08 File类 递归笔记
File类
File类概述
File类:IO流,操作磁盘上的文件(文件夹/目录),也是文件和路径名的抽象表现形式,用于文件和目录的创建,查找和删除等操作.


重要英文单词的含义: (起变量名时会用到)
file:文件
directory:目录
path:路径

绝对路径和相对路径
      绝对路径:以盘符开始的路径  如"D\\a\\hi.txt"
      相对路径:不以盘符开始的路径  如"a\\hi.txt"

      路径不区分大小写 (在Windows系统中不区分大小写, Linux, Mac区分)
      路径一般写成字符串, 而字符串中一个\是转义, 所以要写两个\\


File类: 获取方法
    String getAbsolutePath(): 返回此File的绝对路径名字符串
    String getPath(): 获取File对象的封装路径 (创建对象时传入的路径)
    String getName(): 获取File对象的文件名或目录名  d:\a\b\c\aaa.txt
    long length(): 获取File表示的"文件"大小的字节byte数 (不能获取目录的大小)

File类: 判断方法
boolean exists(): 判断File对象代表的文件或目录是否实际存在
boolean isDirectory(): 判断File表示的是否为目录
boolean isFile(): 判断File表示的是否为文件

File类: 创建删除方法
boolean createNewFile():当文件不存在时, 创建一个新的空文件
false: 路径已经存在(无论文件还是目录)
抛IO异常: 写的路径不符合逻辑 (Y:\\a.txt\dsfsd)
boolean delete(): 删除由此File表示的文件或目录,删除目录时: 必须是空目录


boolean mkdir(): 创建File表示的目录  "d:\\a\\b\\c\\我的目录"
boolean mkdirs(): 创建File表示的多级目录  "d:\\a\\b\\c\\我的目录"


File类: 遍历目录方法
// 常用获取目录中内容的方法
String[] list(): 获取当前File目录下的所有子文件或目录的名字数组
File[] listFiles(): 获取当前File目录中的所有子文件或目录的File对象数组
只能用表示目录的File对象调用,  用文件的File对象, 或者路径不存在, 调用会报错

递归:递归的概念, 分类, 注意事项
将大问题拆解成小问题,小问题解决不了,在继续拆分为更小的问题.

Java中实现递归的方式
方法内部调用方法自己 (所以必须定义方法)

递归的分类:
直接递归:自己调用自己
间接递归:A方法调用B方法, B方法调用C方法, C方法调用A方法

能够使用递归的方式计算5的阶乘
int jc (int n) {
if (n == 1) {
    return 1;
}
return n*jc(n-1);
}

FileFilter文件过滤器的原理和使用

File[] listFiles(FileFilter filter): 返回文件过滤器过滤后的File对象数组
File[] listFiles(FilenameFilter filter): 返回文件过滤器过滤后的File对象数组






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2