如何解决需要一个优化的 Map(k,v) 例如(long, long[]), 避免自动装箱
long[] ids;
long[][] values;
这些值是轮流填写的,即
if ids = ['id1','id2',...]
值可能是 values = [['id2val1','id2val2',..]['id1val1',...],..]
无法避免失序执行,我正在考虑的方法是使用 Map
Map<Long,Long[]>
,
但由于 java 的自动装箱,无法使用 JAVA 泛型。
我想知道是否可以通过一些使用原语的优化数据结构库来完成,
为了避免不必要的自动装箱,我正在寻找像 Koloboke
和 Fastutil
这样的库。
求数据结构推荐
解决方法
虽然您必须使用装箱的 Long
作为映射键,但您不需要将值数组中的原语装箱。您可以使用 Map<Long,long[]>
而不是 Map<Long,Long[]>
。这应该可以缓解您对性能的大部分担忧。
因此,在您开始引入第三方库之前,先看看简单的 HashMap<Long,long[]>
是否足以满足您的目的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。