java 队列代码实现_简单的java代码统计程序(队列实现)

简单的java代码统计程序(队列实现)

1.[文件] Crawler2.java ~ 2KB     下载(15)



/**

* 列出一个文件夹包括子文件夹下面的java文件的总代码行数

*/

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import java.io.IOException;

import java.util.LinkedList;

public class Crawler2 {

private static LinkedList task = new LinkedList();

private static int count = 0;

public static void main(String[] args) {

File dir = new File("E:\\OA\\src\\cn\\oa");

task.addLast(dir);

//执行任务

executeTask();

System.out.println("共有"+count+"行");

}

/**

* 任务执行器,从队列中取出文件夹,统计其中java文件的代码的行数

*/

public static void executeTask()

{

while(task.size()>0){

//取出任务

File dir = task.removeFirst();

for(File file:dir.listFiles())

{

if(file.isFile()&&file.getName().endsWith(".java"))

{

count+=countFileLine(file);

}

else if(file.isDirectory())

{

task.addLast(file);

}

}

}

}

/**

* 统计某一个java文件有多少行

* @param file

* @return

*/

public static int countFileLine(File file)

{

int count = 0;

BufferedReader bufferedReader = null;

try {

bufferedReader = new BufferedReader(new FileReader(file));

while(bufferedReader.readLine()!=null)

{

count++;

}

} catch (Exception e) {

e.printStackTrace();

}finally

{

if(bufferedReader!=null)

{

try {

bufferedReader.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return count;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值