我有一段代码,基本如下:
long[] ids;
long[][] values;
值依次填写,即。 if ids = ['id1','id2',...]
价值观可能是 values = [['id2val1','id2val2',..]['id1val1','id2val2',...],..]
不按顺序执行是无法避免的,我正在考虑的方法是使用map Map<Long,Long[]>
,
但是由于java的自动装箱,不可能使用java泛型。
我想知道是否可以通过使用原语的优化数据结构库来实现,
为了避免不必要的自动装箱,我正在研究如下库 Koloboke
& Fastutil
.
寻找数据结构建议
1条答案
按热度按时间t40tm48m1#
而你必须用盒装的
Long
作为Map键,您不需要在值数组中装箱原语。你可以用Map<Long,long[]> rather than
Map<long,long[]>。这应该可以减轻大部分性能问题。 所以,在开始介绍第三方库之前,先看看是否简单
HashMap<Long,long[]>` 对你来说就足够了。