- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
GNU Trove/trove4j TObjectIntHashMap 非常适合计算字符串出现次数:
TObjectIntHashMap<Integer> map = new TObjectIntHashMap<>();
map.adjustOrPutValue(string, 1, 1);
现在一个常见的任务是询问具有最高计数的字符串或通过递减计数进行迭代。你会怎么做?
谢谢,马塞尔
最佳答案
在TObjectIntHashMap
中对此没有特殊操作。要获取具有最大值的条目,请遍历所有条目:
class GetMaxEntry implements TObjectIntProcedure {
Object key;
int value = Integer.MIN_VALUE;
public boolean execute(Object k, int v) {
if (v >= value) {
key = k;
value = v;
}
return true;
}
}
GetMaxEntry getMaxEntry = new GetMaxEntry();
map.forEachEntry(getMaxEntry);
//process(getMaxEntry.key, getMaxEntry.value);
要通过减少计数进行迭代,您唯一可以做的就是将条目转储到集合或数组中,例如 AbstractMap.SimpleImmutableEntry
(或具有原始值字段的特殊 Entry 类),使用相同的 forEachEntry
操作,然后使用自定义 Comparator
按 Collections.sort()
或 Arrays.sort()
排序.
关于java - 通过减少值迭代 GNU Trove TObjectIntHashMap 的推荐方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22961673/
我在设置现有 Maven 项目的新计算机上遇到严重问题。 Eclipse 多次提示缺少 Artifact : Missing artifact junit:junit:jar:4.8.2:test M
我正在尝试下载 gnu.trove 库,我有这个依赖项: gnu.trove trove 3.0.3 但我收到此错误: Could not find artifact g
我在 java 项目中使用 trove 3.0.3 库。gnu.trove.queue (TByteQueue, TDoubleQueue ...) 中的所有类都是接口(interface)。在哪里可
GNU trove 库是线程安全的吗?我对 TObjectDoubleHashMap 特别感兴趣。我查看了他们的文档,但没有提及任何内容,那么我们是否可以假设它不是线程安全的? 最佳答案 它具有使其线
我使用 Python 遇到了这个概念 distutils2/packaging . 我确实谷歌了,但没有完全理解这个想法,所以宁愿从更有经验的人那里得到更好的解释,以更好地吸收这个概念。 "Trove
Trove 中是否有与 Java 的 Collections.singleton、Collections.singletonList 或 singletonMap 类似的内容? 我正在开发一个应用程序
如何设置 TLongDoubleHashMap 集合的默认值(当键不存在时返回)。它默认返回 0,我希望它返回 NaN。 我在文档中找到了这个: Returns the value that will
有没有一种有效的方法可以将 Trove map 中的所有值设置为零? 现在我正在这样做: public static class NcZeroD implements TDoubleProce
目前,我正在使用 Guave 的 ArrayListMultiMap,我可以在其中处理超过 100.000 个项目。映射的键是一个字节数组,值为long。 现在我想减少开销。 我的想法是仅使用原始集合
我想在我的 java 项目中使用 Trove-1.0.2 jar 作为 map 。我使用 Eclipse IDE。我在构建路径中使用“添加外部 jars”添加了 Trove jar,但仍然得到 Cla
我正在使用 LinkedHashMap在我的程序中。但我需要一个具有原始数据类型的。我们有 map 但没有订购?对订购的有任何想法吗? 最佳答案 目前在 Trove 中没有类似 LinkedHashM
我偶然发现了 trove 的 TObjectDoubleHashMap 的问题。版本 2.0.2 不会覆盖 hashCode方法。 最新版本的 trove (3.0.0) 包括 hashCode .
出于性能原因,我正在将一些代码迁移到 GNU trove。 但是,我确实有一些 TreeSet,我需要相当快的更新和查找以及排序迭代 - TreeSet 的主要用例。当然,我会回顾一下它的使用,并检查
Trove 分类器列表位于:http://pypi.python.org/pypi?:action=list_classifiers 当我创建 PyPI 包时,我不确定是否需要将“ parent ”包
GNU Trove/trove4j TObjectIntHashMap 非常适合计算字符串出现次数: TObjectIntHashMap map = new TObjectIntHashMap<>()
最近我使用自动化脚本(devstack)安装了 openstack trove。成功安装并创建一些用户和项目后,我设法在其中创建一个数据库实例和数据库。不幸的是,我要构建的每个数据库实例(通过命令行或
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
我想在一些 Trove 集合周围放置不可修改的包装器:我已经检查了 Trove 文档,但我似乎无法找到一种简单的方法来做到这一点(我可能忽略了一些明显的东西)。 到目前为止,每次我需要这样一个不可修改
我刚刚了解了 trove 库以及它如何比 JDK 的 Maps 更节省内存。我之前使用 HashMap 来存储 totalSize = 2^N 双数组 条目,如下所示: final Map myTab
在最近的一次采访中,有人问我 HashMap 在 Java 中是如何工作的,我能够很好地解释它并解释在最坏的情况下 HashMap 可能会由于链接而退化为列表。我被要求想出一种方法来提高这种表现,但在
我是一名优秀的程序员,十分优秀!