本帖最后由 邱成 于 2012-10-3 22:26 编辑
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)){
m.put(args,ONE);
}else{
int freq = m.get(args);
m.put(args,freq+1);
}
}
System.out.println(m.size());
System.out.println(m);
}
}
运行代码:
D:\java\collection>javac TestArgsWords.java
D:\java\collection>java TestArgsWords aaa bbb ccc ddd aaa aaa
输出结果:
4
{aaa=3, ddd=1, ccc=1, bbb=1}
里面有一个小问题没明白
int freq = m.get(args); 这句话m.get(args); 是获取他的value,为什么赋给一个int类型的可以实现计数。我是想是不是发现一次aaa 算1次 第二个aaa算第二次?
|