Java统计单词出现频率

来源:互联网 发布:linux 设置环境变量 编辑:程序博客网 时间:2024/04/28 03:11

使用场景:统计单词词频率
思路:使用HashMap的键值对特性,根据传入的参数作为键值,从Map中取对象,取到了则 + 1,未取到则置1。不断循环下去。

代码如下

方法一:

import java.util.*;public class TestArgsWords {  //private static final Integer ONE = new Integer(1);  private static final int ONE = 1;  public static void main(String args[]) {    Map m = new HashMap();    for (int i = 0; i < args.length; i++) {      //Integer freq = (Integer) m.get(args[i]);      int freq = (Integer) m.get(args[i]) == null ? 0 : (Integer) m.get(args[i]);      //m.put(args[i],(freq == null? ONE : new Integer(freq.intValue() + 1)));      m.put(args[i], freq==0 ? ONE : freq + 1);    }    System.out.println        (m.size() + " distinct words detected:");    System.out.println(m);  }}

方法二:

import java.util.*;public class TestArgsWords {  private static final int ONE = 1;  public static void main(String args[]) {    Map<String, Integer> m = new HashMap<String, Integer>();    for (int i = 0; i < args.length; i++) {      if(!m.containsKey(args[i])) {        m.put(args[i], ONE);      }      else {        int freq = m.get(args[i]);        m.put(args[i], freq + 1);      }    }    System.out.println        (m.size() + " distinct words detected:");    System.out.println(m);  }}
原创粉丝点击