题目:统计文章中单词的个数,或出现频率
思路:先读文件到StringBuffer中,再使用正则表达式,分割成str[],在进行统计(使用map)。
package demo.subject;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
/**
* 统计文章单词数
* 原理:使用正则表达式,分割成str[],在进行统计
* @author Ant
*
*/
public class WordCounter {
/**
* 统计单词出现频率
* @param str
* @return
*/
public Map<String,Integer> count(StringBuffer str){
Map<String, Integer> map = new HashMap<>();
String s[] = str.toString().split("[^a-zA-Z]");//用String自带的split,
// Pattern p = Pattern.compile("[^a-zA-Z]");//或者用Pattern类
// String s[] = p.spli