zoukankan      html  css  js  c++  java
  • 【转】统计一篇文章中单词出现的频率(java 版)

    统计一篇给定的 文章中,各个单词出现的次数的算法。用HashMap 来存放出现的单词的次数,Key 是要统计的单词,Value 是单词出现的次数。
    最后再按照 Key 的升序排列出来。

    import java.util.*; 
    import java.io.*; 
     
    public class CountOccurrenceOfWords { 
     
        public static void main(String[] args) throws Exception { 
            Map hashMap = null; 
            BufferedReader infile = null; 
            StringTokenizer st = null; 
            String filename = "Test.txt"; 
            String string; 
            String file = null; 
            //打开一篇文章,名字是 Test.txt .
            infile = new BufferedReader(new FileReader(filename)); 
            while ((string = infile.readLine()) != null) { 
                file += string;  //都出整篇文章,存入String中。
     
            } 
     
            hashMap = new HashMap(); 
           
             // 取出文章中的单词,"," "." "!" " " 为各个单词的分界符。
            st = new StringTokenizer(file, " ,.!"); 
     
            while (st.hasMoreTokens()) { 
                String key = st.nextToken(); 
                if (hashMap.get(key) != null) { 
                    int value = ((Integer) hashMap.get(key)).intValue(); 
                    value++; 
                    hashMap.put(key, new Integer(value)); 
     
                } else { 
                    hashMap.put(key, new Integer(1)); 
                } 
            } 
          
             //按照单词的字母次序输出。
            Map treeMap = new TreeMap(hashMap); 
            Set entrySet = treeMap.entrySet(); 
     
            Iterator iterator = entrySet.iterator(); 
     
            while (iterator.hasNext()) { 
     
                System.out.println(iterator.next()); 
            } 
     
        } 
     
    }

  • 相关阅读:
    mysql_Navicat数据库破解
    SpringBoot+ Mybatis 搭建
    SSH框架搭建
    SSM 框架搭建
    android 网络_网络图片查看器
    android 网络_网络源码查看器
    android ListView_显示数据库数据
    android ListView_新闻案例
    android ListView的怪异现象
    android ListView_Tiger
  • 原文地址:https://www.cnblogs.com/lijc1990/p/2954689.html
Copyright © 2011-2022 走看看