如果需要键/值数据结构,最好在ArrayList和LinkedHashMap中使用以获得更好的速度

时间:2014-02-16 17:50:26

标签: java arraylist linkedhashmap

我需要维护键/值对。我还需要维护插入顺序。我知道有两种方法可以做到:

使用ArrayList,其中每个对象都是包含键/值对的类型实体,如下面描述的ListData:

class ListData{

String key;
ArrayList<MyData> dataList;

}

使用LinkedHashMap维护键值对。

使用LinkedHashMap的速度方面是否有任何性能/速度问题?

有人可以提出最佳方法吗?

2 个答案:

答案 0 :(得分:0)

毫无疑问,与ArrayList相比,Linked Hash Map的性能更好。我怀疑你将如何维护列表中的键/值对。

但是,如果您想要按顺序维护键/值对,请转到Linked Hash Map,否则Hash Map

答案 1 :(得分:0)

考虑到效果,LinkedHashMapget(), put(), remove(). conyainsKey()所有 O(1)操作,您的广告订单将被保留。如果您使用ArrayList,则 O(N)