阿士匹灵.sout 2023-05-06 22:32 采纳率: 28.6%
浏览 50

同样的代码别人运行就没问题,我运行就出错是怎么回事?


 package com.itheima.d2_recusion;

    import java.io.File;

    /*
           非规律化递归
           案例:去D盘搜索一个叫eclipse.exe文件
     */
    public class RecusionDemo4 {
        public static void main(String[] args) {
            // 2、调用方法:传入目录,文件名
            searchFile(new File("D:\\"), "eclipse.exe");
        }

        /**
         * 1、搜索某个目录下的全部文件,找到我们想要的文件
         * @param dir      被搜索的源目录
         * @param fileName 被搜索的文件名
         */
        public static void searchFile(File dir, String fileName) {
            // 3、判断dir是否是目录
            if (dir != null && dir.isDirectory()) {
                // 可以找了
                // 4、提取当前目录下的一级对象
                File[] files = dir.listFiles();
                // 5、判断是否存在一级文件对象,存在才可以遍历
                if (files != null && files.length > 0){
                    for (File file : files) {
                        // 6、判断当前遍历的一级文件对象是文件还是文件夹
                        if (file.isFile()){
                        // 7、是不是要找的,是就输出其路径
                            if (file.getName().contains(fileName)){
                                System.out.println("找到了:" + file.getAbsolutePath());
                            }
                        }
                        else{
                            // 8、说明是文件夹,需要继续递归寻找
                            searchFile(file, fileName);
                        }
                    }
                }
            }else{
                System.out.println("您当前搜索得位置不是文件夹");
            }
        }
    }

img

img

别人查到就输出路径查不到输出 System.out.println("您当前搜索得位置不是文件夹");
而我的确实查到了两个都输出,查不到了值输出 System.out.println("您当前搜索得位置不是文件夹");
咋回事啊?有人说是2头进了,我表示不理解。为啥同样的代码到别人那都没问题,到我这就成2头进了

  • 写回答

3条回答 默认 最新

  • pzzhao 2023-05-07 09:54
    关注

    是不是你目录下还有其他文件,按照你这个逻辑,如果你这个目录或子目录中存在其他文件,是会这样的

    评论

报告相同问题?

问题事件

  • 修改了问题 5月6日
  • 修改了问题 5月6日
  • 修改了问题 5月6日
  • 创建了问题 5月6日

悬赏问题

  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件
  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题
  • ¥50 如何将脑的图像投影到颅骨上