Java 有内置的频率表吗?我记得在我的一个类中使用了一个,并且我知道 Python 有一个,但我不记得是我自己构建了一个,还是 Java 有一个可供使用。
问问题
1980 次
2 回答
8
我假设“频率表”是指价值计数图。
答案是否定的。
但是,创建一个表现良好的人并不是一件容易的事:
Map<T, Integer> freq = new HashMap<T, Integer> () {
@Override
public Integer get(Object key) {
return containsKey(key) ? super.get(key) : 0;
}
}
然后,在使用时,您不必在获取频率时使用空检查使代码混乱:
freq.get(value); // returns zero for not found
或者在递增时:
freq.put(value, freq.get(value) + 1); // always works, won't throw NPE etc
于 2013-03-07T02:23:55.520 回答
1
不是内置的,但您可以检查Apache Commons Statistics。它有一个简单的频率表构建器,允许查找频率、累积频率、计数等。
于 2013-03-07T02:22:47.430 回答