写一段java代码,用hash函数统计一句话中每个单词的个数
时间: 2023-06-03 18:06:37 浏览: 148
编写Java程序,实现统计单词个数功能
好的,以下是Java代码示例:
```
import java.util.HashMap;
public class WordCount {
public static void main(String[] args) {
String sentence = "This is a test sentence for word count test";
String[] words = sentence.split("\\s+");
HashMap<String, Integer> wordCountMap = new HashMap<>();
for (String word : words) {
String processedWord = word.replaceAll("[^a-zA-Z0-9]", "").toLowerCase(); // 只考虑字母和数字,忽略标点符号和大小写
if (processedWord.length() > 0) { // 忽略空单词
if (wordCountMap.containsKey(processedWord)) {
wordCountMap.put(processedWord, wordCountMap.get(processedWord) + 1); // 单词出现过,数量加一
} else {
wordCountMap.put(processedWord, 1); // 单词第一次出现,数量为一
}
}
}
System.out.println("单词个数统计结果:");
for (String word : wordCountMap.keySet()) {
System.out.println(word + ": " + wordCountMap.get(word));
}
}
}
```
以上代码使用HashMap数据结构统计一句话中每个单词出现的次数,并打印出结果。注意代码中使用正则表达式去掉了单词中的标点符号,并将所有单词都转化为小写字母进行统计。
阅读全文