用java在文本文件bigbook.txt中包含有很长篇幅的英语短文,编写程序要求统计文件的所有短文中包含英文字母“A”的个数,并显示统计的时间
时间: 2023-06-11 21:05:41 浏览: 145
AnylogicBigBook中文案例精选
好的,我明白你的要求了。以下是可以解决你问题的Java代码:
```
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Date;
public class CountAInTextFile {
public static void main(String[] args) {
String fileName = "bigbook.txt";
int count = 0;
Date startTime = new Date();
try (BufferedReader br = new BufferedReader(new FileReader(fileName))) {
String line;
while ((line = br.readLine()) != null) {
count += countA(line);
}
} catch (IOException e) {
e.printStackTrace();
}
Date endTime = new Date();
long elapsedTime = endTime.getTime() - startTime.getTime();
System.out.println("File: " + fileName);
System.out.println("Time elapsed: " + elapsedTime + " milliseconds");
System.out.println("Count of letter A: " + count);
}
private static int countA(String line) {
int count = 0;
for (int i = 0; i < line.length(); i++) {
if (line.charAt(i) == 'A' || line.charAt(i) == 'a') {
count++;
}
}
return count;
}
}
```
这段代码会读取指定的文件`bigbook.txt`,并统计文件中所有短文(每一行都是一段短文)中包含英文字母“A”的个数。同时,它还会记录统计所用的时间,并将结果以文字形式输出。
注意,上述代码中的`countA`方法用于统计一行短文中包含英文字母“A”的个数。这里将大小写字母都算作是“英文字母”(在英语中大小写字母是等价的)。
希望这个回答可以帮助你解决问题。
阅读全文