一、需求

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

二、代码

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  classTest {
     public  static void main(String[]  args) {
//逐行读文件
br = null;
         try {
map = newHashMap<String,Integer>();
br = new BufferedReader(new FileReader("d:/mywords.txt"));
line;
              while(null != (line = br.readLine())){
                   System.out.println(line);
//将字符串用空格分隔
ss = line.split("\\s+");
                   for(String s : ss){
                       if(map.containsKey(s)){
map.put(s, map.get(s)+1);
                       }else{
map.put(s, 1);
                       }
                   }
              }
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个.