Java统计单词及其出现频率

来源:百度知道 编辑:UC知道 时间:2024/06/12 04:22:17
输入一个中英文混合的字符串(如"This 我this我 是end"),完成汉字总数、每一个汉字频度、英文单词总数、每一个英文单词频度等统计。
要求编写一个JAVA程序实现上述功能。
哪位高手帮一下忙啊?非常感谢!!

提供思路:建一个map,英文根据空格分隔,如没有加入map,然后向后检索,统计次数,中文根据ascII码判断,是汉字则切割加入map,让后向后检索。

楼上的,是判断单词不是字母。
一楼思路很好,楼主可以借鉴。

一楼的思路不错,我建议你不要找现成的,最好根据思路来编写程序,这样对你有很大的好处

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class TestCount {
public static void main(String[] args) {
count("asdf中12国asdf中12国12");

}
public static void count(String str){
Map p = new HashMap();
for(int i = 0; i < str.length(); i++){
if(p.get(str.charAt(i)+"")==null){//+""是为了转化为String
p.put(str.charAt(i)+"", 1+"");//value值也可以用new Integer(1)
}else{
String value = Integer.parseInt(p.get(str.charAt(i)+"").toString())+1+"";//+""转化为String
p.put(str.charAt(i)+"", value);
}
}
Set key = p.keySet();//获得key集合
Iterator it = key.iterator