您的位置:首页 > 编程语言 > Java开发

【Java】统计文件中各单词数量

2017-08-23 21:59 489 查看
一、需求

从文件读入一些单词(用空格隔开),统计每个单词出现的个数

二、代码

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
 
public
class
Test {
     public
static void
main(String[]
args) {
         //逐行读文件
         BufferedReaderbr =
null
;
         try {
              Map<String,Integer>map =
newHashMap<String,Integer>();
              br = new BufferedReader(new FileReader("d:/mywords.txt"));
              Stringline;
              while(null != (line =
br.readLine())){
                   System.out.println(line);
                   //将字符串用空格分隔
                   String[]ss =
line.split("\\s+");
                   for(String
s : ss){
                       if(map.containsKey(s)){
                            map.put(s,
map.get(s)+1);
                       }else{
                            map.put(s, 1);
                       }
                   }
              }
              Set<String>keys =
map.keySet();
              for(String
key : keys){
                   System.out.println(key +
"有:" +
map.get(key) +
"个.");
              }
         }catch(FileNotFoundException
e) {
              e.printStackTrace();
         }catch(IOException
e) {
              e.printStackTrace();
         }finally {
              if(null !=
br){
                   try {
                       br.close();
                   }catch(IOException
e) {
                       e.printStackTrace();
                   }
              }
         }
     }
}

三、执行结果

文件中字符如下:

i love you baby

do you love me

执行结果:

love有:2个.

baby有:1个.

me有:1个.

i有:1个.

do有:1个.

you有:2个.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 分割字符串