| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1618 人关注过本帖
标题:求目录下有多上个Java文件,求大佬有没有更好的计数方法?
只看楼主 加入收藏
蓄力小绵羊
Rank: 2
等 级:论坛游民
帖 子:26
专家分:14
注 册:2018-4-23
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
求目录下有多上个Java文件,求大佬有没有更好的计数方法?
public class Demo_1 {
   
    static int count = 0;
        //这里可不可以用别的方法计数,感觉放在外面不怎么好。    求大佬指教!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    public static void main(String[] args) {
        File file = new File("E:\\java工具\\软件\\Java 工具\\eclipse\\workspace\\Fuxi\\src");
        
        String str =".java";
        
        int sum = sum(file,str);
        
        System.out.println(sum);
        
        
     }
    public static int sum (File file,String str){
        
        if (file.isDirectory()) {
            //获取目录下的字文件
            File[] files = file.listFiles();
            for (File file2 : files) {
                if (file2.isFile()) {
                    if (file2.getName().endsWith(str)) {
                        count++;
                    }
                    
                } else {
                    sum(file2,str);
                }
            }
        }
        
        return count;
    }
}
搜索更多相关主题的帖子: 目录 Java str File sum 
2018-04-30 13:07
疯狂的小a
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:39
帖 子:423
专家分:1871
注 册:2018-2-6
收藏
得分:20 
程序代码:
import public class Demo_1 {
    public static void main(String[] args) {
        File file = new File("E:\\java工具\\软件\\Java\\工具\\eclipse\\workspace\\Fuxi\\src");
        System.out.println(getTotal(file, ".java"));
    }

    public static int getTotal(File file, String str) {
        int total = 0;
        if (file.isDirectory()) {
            // 获取目录下的子文件
            File[] files = file.listFiles();
            for (File file2 : files) {
                if (file2.isFile())
                    if (file2.getName().endsWith(str))
                        total++;
                    else
                        getTotal(file2, str);
            }
        }
        return total;
    }

}

为啥要放在成员位置,没有必要呀

假如人生没有梦想,和咸鱼有什么区别!
2018-04-30 13:50
蓄力小绵羊
Rank: 2
等 级:论坛游民
帖 子:26
专家分:14
注 册:2018-4-23
收藏
得分:0 
回复 2楼 疯狂的小a
你把变量放在第一行,递归的时候不会清零的吗?
2018-04-30 15:37
疯狂的小a
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:39
帖 子:423
专家分:1871
注 册:2018-2-6
收藏
得分:0 
回复 3楼 蓄力小绵羊
程序代码:
import public class Demo_1 {
    public static void main(String[] args) {
        File file = new File("/home/xiaoa/桌面/test");
        System.out.println(getTotal(file, ".java"));
    }

    static int total = 0;
    public static int getTotal(File file, String str) {
        if (file.isDirectory()) {
            // 获取目录下的子文件
            File[] files = file.listFiles();
            for (File file2 : files) {
                if (file2.isFile()) {
                    if (file2.getName().endsWith(str))
                        total++;
                } else {
                    getTotal(file2, str);
                }
            }
        }
        return total;
    }
}
不好意思,脑子瓦特了
那这个变量真的只能作为成员变量了,让每一次遍历,都共享这个变量。

假如人生没有梦想,和咸鱼有什么区别!
2018-04-30 17:08
蓄力小绵羊
Rank: 2
等 级:论坛游民
帖 子:26
专家分:14
注 册:2018-4-23
收藏
得分:0 
嗯嗯,谢拉
2018-04-30 20:03
快速回复:求目录下有多上个Java文件,求大佬有没有更好的计数方法?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019566 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved