JAVA基础: 文件类应用、递归的应用

1.文件和文件夹
文件夹里面可以存放文件,比如电脑盘符里面的黄色包就是文件夹,各种后缀名(.java .jpg
.png .avm .mp4) 的是文件
2.相对路径和绝对路径
绝对路径(唯一路径): D:\Program Files\Java\jdk1.8.0_201\lib\javafx-mx.jar
从盘符根目录开始,直至某个文件的目录
相对路径:
K9506\src\day22\Demo01.java //相对路径
D:\kgc\ K9506\src\day22\Demo01.java
从Idea工程 K9506开始,直至Demo01.java这个文件的目录
任何一个相对路径都有一个唯一路径(绝对路径)
3.正斜杠和反斜杠
forward slash 正斜杠 /
backward slash 反斜杠
1.在CMD里面不区分 正斜杠 和 反斜杠
2."记住一件事情,除了在程序中,其它地方几乎不需要用反斜杠“
3./ 分隔符 \ 转义字符
(1)浏览器地址栏网址使用 正斜杠/
http://tool.oschina.net/apidocs/apidoc?api=jdk-zh
(2)windows文件浏览器上使用 反斜杠
D:\Program Files\Java\jdk1.8.0_201\bin
(3)出现在htm url()属性中的路径,指定的路径是网络路径,所以必须使用 正斜杠/
4.File文件类
文件和目录路径名的抽象表示形式。
File类的构造方法
5.File文件类创建功能
1.创建文件 createNewFile()
2.创建单层文件夹 mkdir()
3.创建多层文件夹 mkdirs()
6.File文件类的获取功能
getName() 获得文件的名字
getParentFile() 获得文件的上面的文件夹路径
getAbsolutePath() 获得绝对路径
getPath() 获得文件路径
.7.File文件判断功能
isAbsolute() 判断文件路径是否是绝对路径 和文件没有关系
isDirectory() 目录存在返回true ,目录是不包含文件的一个路径
isFile() 判断文件是否是存在的路径
8.File文件类删除功能
delete() 方法
delete如果用在文件上就删除文件,用再文件夹路径上就删除最后一个文件夹
如果文件夹下面有文件,是无法删除文件夹的
9.list()方法与listFiles()方法
File类两个获取功能:
String[] list():只获取当前文件夹下所有的文件或文件夹(不包含子文件夹下的内容)如果传入的是一个文件路径,直接返回null
无论使用相对路径还是绝对路径,最终返回的字符串数组中存储的都是文件或文件夹名称
File[] listFiles():只获取当前文件夹下所有的文件或文件夹(不包含子文件夹下的内容)
如果传入的是绝对路径,那么获取的该文件夹下的文件或目录也是绝对路径
如果传入的是相对路径,那么获取的该文件夹下的文件或目录也是相对路径
如果传入的是一个文件路径,直接返回null
————————————————————————————
绝对路径:唯一路径:从盘符到文件所处位置路径,
相对路径:相对某个位置到文件所处的位置路径,
路径隔层用“\“”/”“//”都可以
File类建立抽象路径或文件用File中方法应用
File的mkdirs方法创建多层文件夹
mkdir方法创建单个文件夹
delete用在文件上删除文件,也可用于文件夹删除路径上最后一个文件夹
删除不了有文件的文件夹
————————————————————————————
递归
递归就是方法调用方法自身
1.阶乘案例:
public class JieCheng {
public static void main(String[] args) {
System.out.println(getJieCheng(6));
System.out.println(getJieCheng2(6));
}
public static int getJieCheng(int n){
//声明一个变量 sum
int sum=1;
for(int i=1;i<=n;i++){
sum = i; //sum = sumi;
}
return sum;
}
public static int getJieCheng2(int n){
/if(n0 || n1){
return 1;
}
/
if(n<2){
return 1;
}
return n * getJieCheng2(n-1);
}
}
2.递归删除文件
/*

  • 用递归和ListFile() 遍历文件
  • */
    public class Demo02 {
    public static void main(String[] args) {
    File f = new File(“9506\aa”);
    getFile(f);
    }
    public static void getFile(File file){
    File[] files = file.listFiles();
    for(File f : files){
    if(f.isFile()){
    System.out.println(f.delete());
    }else{
    getFile(f);
    }
    }
    }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值