Java版统计文件中的每个单词出现次数
时间: 2023-11-24 08:07:29 浏览: 43
你可以通过以下步骤来统计文件中每个单词出现的次数:
1. 读取文件:使用Java的文件读取功能,将待统计的文件读入内存中。
2. 分离单词:将读入的文件内容按照空格、标点符号等分离成单词,可以使用Java的正则表达式来实现。
3. 统计单词数量:使用HashMap来存储每个单词出现的次数,遍历每个单词,如果该单词已经在HashMap中存在,则将其出现次数加1,否则将该单词加入HashMap,并将其出现次数设为1。
4. 输出结果:遍历HashMap,输出每个单词及其出现次数。
以下是示例代码:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.HashMap;
import java.util.Map;
public class WordCount {
public static void main(String[] args) {
String filename = "test.txt"; // 待统计的文件名
Map<String, Integer> wordCount = new HashMap<>(); // 用于存储单词出现次数的HashMap
// 读取文件
try (BufferedReader reader = new BufferedReader(new FileReader(filename))) {
String line;
while ((line = reader.readLine()) != null) {
// 分离单词
String[] words = line.split("[\\p{Punct}\\s]+");
for (String word : words) {
// 统计单词数量
if (wordCount.containsKey(word)) {
wordCount.put(word, wordCount.get(word) + 1);
} else {
wordCount.put(word, 1);
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
// 输出结果
for (Map.Entry<String, Integer> entry : wordCount.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
}
```
这个示例代码可以读取名为test.txt的文件,统计其中每个单词出现的次数,并输出结果。你可以将其修改成符合你自己需求的代码。