java - java有频率表吗?

标签 java object

Java 有内置的频率表吗?我记得在我的一个类(class)中使用过一个,我知道 Python 有一个,但我不记得是我自己构建了一个还是 Java 是否有一个可供使用。

最佳答案

我假设“频率表”是指值(value)与计数的映射。
答案是

不过,创建一个行为良好的对象并不难:

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

关于java - java有频率表吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15261899/

相关文章:

java ArrayList包含不同的对象

python - 以编程方式列出对象属性及其值?

javascript - Python 2.7x 中是否有像 Javascript 中那样的对象传播语法?

java - 我的代码属于任何设计模式吗?

java - 如何在java中使用有时会更改为CSV格式的模式来格式化大字符串

java - RIJNDAEL 256 CBC加密与Java中的IV

object - 在 RavenDB 中存储大文档导致客户端内存不足

java - vector ArrayIndexOutOfBounds

java - 类似于 Dynatrace 的工具

javascript - 如何填充和规范化可变长度数组