Java中Map和StringTokenizer的使用

来源:互联网 发布:红蜘蛛教学软件窗口化 编辑:程序博客网 时间:2024/03/28 19:48
 

 

请编写一个文本统计程序,统计某个文本文件中单词出现的次数(忽略大小写)。文本文件作为main方法的参数输入,输出如下格式: Hello:3 good:5 moon:1

上述输出表明了文本文件中hello单词出现了3次,good出现了5次,moon出现了1次

 

 

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.StringTokenizer;


public class CalWordsNum {

 
 public void CalWords(String content)
 {
  Map<String,Integer> m=new HashMap<String,Integer>();
  StringTokenizer stz=new StringTokenizer(content,",;!: ");
  while(stz.hasMoreTokens())
  {
   String temp=stz.nextToken();
   
   if(m.containsKey(temp))
   {
    m.put(temp, (Integer)m.get(temp) + 1);
   }
   else
   {
    m.put(temp, 1);
   }
  }
  for (Map.Entry<String, Integer> entry : m.entrySet())
  {
   System.out.println(entry.getKey()+":"+entry.getValue());
  }
   
 }
 public static void main(String[] args)
 {
  System.out.println("请输入要检测的文本:");
  Scanner input=new Scanner(System.in);
  String s=input.nextLine();
  CalWordsNum cal=new CalWordsNum();
  cal.CalWords(s.toLowerCase());
 }

}

原创粉丝点击