Java学习总结-递归-递归寻找文件绝对路径

递归是啥?

一个方法自己调用自己。我的理解是,另一种形式的循环。循环计算机的魅力所在。循环在计算机中属性得到极大的增强,生活也在循环,现在,过去,仍是。我有时候在想,平淡的生活,每天机械般的生活,这样的生活不诱人,最厉害的是润物细无声,人们早已沉沦。生活不分好坏,但没有找寻到自我,过着平淡生活。

通过文件名找路径:

java 复制代码
public class FlieWriterDemo {
    public static void main(String[] args) {
        File dir = new File("J:/");
        searchFlie(dir, "test.txt");
    }

    private static void searchFlie(File dir, String file) {
        //判断极端情况
        if (dir == null || !dir.exists()||dir.isFile()) {
            System.out.println("文件不存在");
            return;
        }
        File[] files = dir.listFiles();//获取文件列表
        if(files != null &&  files.length > 0){//判断文件列表是否为空
            for (File file1 : files) {//遍历文件列表
                if (file1.isDirectory()) {//判断是否为文件夹
                    searchFlie(file1, file);
                } else {
                    if (file1.getName().equals(file)) {//判断文件名是否相同
                        System.out.println(file1.getAbsolutePath());
                    }
                }
            }
        }
        return;
    }
}
相关推荐
云上艺旅13 小时前
K8S学习之基础七十四:部署在线书店bookinfo
学习·云原生·容器·kubernetes
你觉得20513 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
A旧城以西14 小时前
数据结构(JAVA)单向,双向链表
java·开发语言·数据结构·学习·链表·intellij-idea·idea
无所谓จุ๊บ14 小时前
VTK知识学习(50)- 交互与Widget(一)
学习·vtk
FAREWELL0007514 小时前
C#核心学习(七)面向对象--封装(6)C#中的拓展方法与运算符重载: 让代码更“聪明”的魔法
学习·c#·面向对象·运算符重载·oop·拓展方法
吴梓穆14 小时前
UE5学习笔记 FPS游戏制作38 继承标准UI
笔记·学习·ue5
Three~stone15 小时前
MySQL学习集--DDL
数据库·sql·学习
齐尹秦15 小时前
HTML 音频(Audio)学习笔记
学习
瞌睡不来15 小时前
(学习总结32)Linux 基础 IO
linux·学习·io
Moonnnn.16 小时前
运算放大器(四)滤波电路(滤波器)
笔记·学习·硬件工程