1

我研究了我的键在 hashMap 中的位置。例子 :

    HashMap<Integer, String> ht = new HashMap();
    ht.put(1, "c");
    ht.put(10, "b");
    ht.put(8, "r");

    System.out.println(ht);

10 的位置为 3 in HashMap, 8 的位置为 2 ...

所以我有两个问题:

  1. 如何从 HashMap 中检索这些位置?
  2. 当我有很多元素时,我使用 hashMap 来检索位置或二进制搜索?
4

2 回答 2

13

HashMap不是排序或有序的Map实现,所以这里没有“位置”。

LinkedHashMap是有序的,TreeMap是排序的。

于 2012-10-26T11:57:06.150 回答
2

哈希映射没有顺序,因此哈希映射中没有真正的位置概念。如果您需要有序/排序的地图,请查看 TreeMap 或 LinkedHashMap。

于 2012-10-26T11:57:22.063 回答