单词统计

package text;
import java.io.File;
import java.util.Scanner;
import java.io.File;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
public class zimupinlv {
public static <type> void main (String[] args) throws File {
File file=new File("C:\\Users\\冯静妃\\Desktop\\StringBuffer.txt");
if(!file.exists()){
System.out.println("文件不存在");
return;
}
Scanner scanner=new Scanner(file);
HashMap<String,Integer> hashMap=new HashMap<String,Integer>();
while(scanner.hasNextLine()) {
String line=scanner.nextLine();
String[] lineWords=line.split("\\W+");
Set<String> wordSet=hashMap.keySet();
for(int i=0;i<lineWords.length;i++) {
if(wordSet.contains(lineWords[i])) {
Integer number=hashMap.get(lineWords[i]);
number++;
hashMap.put(lineWords[i], number);
}
else {
hashMap.put(lineWords[i], 1);
}
}
}
Iterator<String> iterator=hashMap.keySet().iterator();
while(iterator.hasNext()) {
String word=iterator.next();
System.out.printf("单词:%-12s 出现次数:%d\n",word,hashMap.get(word));
}
}
} 这个题目中有文件的导入和读取,还有单词个数计算和输出。用了函数hashMap函数,其中的变量Integer是动态的,不断向后面的单词取值,之后映射给String,从而比较来计数,如果相等就number加1,如果不等就赋值次数为1。

posted on   FF冯静妃  阅读(67)  评论(0编辑  收藏  举报

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示