簡體   English   中英

比較 HashMap 值並返回第一個鍵

[英]Compare HashMap values and return first key

我有HashMap

Map<String, Integer> map = new HashMap<>();
        map.put("b", 2);
        map.put("a", 2);
        map.put("c", 2);

我需要比較值,如果相等,我需要返回第一個鍵值"b" ,但 map 返回"a"

我怎樣才能實現它?

HashMap中,鍵沒有排序,因此您無法分辨哪個鍵首先插入。

查看帶有有序鍵的 Map 的LinkedHashMap

Hashmaps 不是為搜索值而設計的(即,它們是為搜索而設計的)。 您可能需要為此創建一個不同的 hashmap:

Map<Integer, ArrayList<String>> map2 = new HashMap<>();
ArrayList<String> arr = new ArrayList<>();
arr.add("b");
arr.add("a");
arr.add("c");
map2.put(2, arr);
map2.get(2).get(0); // returns "b", i.e, first element added into the array

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM