题目:请编写一个程序,从文件src.txt读入一篇英文短文,统计并输出该短文中不同单词出现的次数,然后输出统计结果。
package leetcode;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
/**
* @author: taibai
* @date:2019/8/13
*/
public class Solution {
public static void main(String[] args) throws IOException {
String regex="\t|\r|\n|\"|\\,|\\。|\\:|\\?|\\!";
BufferedReader bufferedReader = new BufferedReader(new FileReader(new File("src.txt")));
String result = null;
HashMap<String, Integer> map = new HashMap<>();
while((result = bufferedReader.readLine())!=null){
String s = result.replaceAll(regex," ");
System.out.println(s);
String[] arr = s.split(" ");
for(String str:arr){
if(str.equals("")) continue;
if(map.containsKey(str)){
map.put(str,map.get(str)+1);
}else{
map.put(str,1);
}
}
}
for (String str :map.keySet()) {
System.out.println(str+":"+map.get(str));
}
}
}
keypoint1:将文件放置在工程的根目录下
keypoint2:标点符号分中英文,正则表达式可以更丰富