簡體   English   中英

如何將鍵值作為其他Map的關鍵?

[英]How to put key-value as key for other Map?

我想將值放在HashMap中,如下所示,

    map1.put("A",3);

    map1.put("A",5);
    map1.put("B",4);
    map1.put("B",8);

現在我想把(“A”,3)鍵/值對作為其他地圖的關鍵,比方說(“A”,3)是key1,對於其他map2.put(key1,abc);

對他人也一樣。 你能幫我這樣做嗎???

您可以獲取第一個hashMap entrySet並將其用作第二個hashMap的鍵。

entrySet返回

設置此映射中包含的映射的視圖

例如,

1)設置firstMapEntries = map1.entrySet();

2)創建第二個地圖

3)迭代firstMapEntries。

4)添加到第二個映射secondMap.put(firstMapEntry,“abc”)

您可以使用entrySet方法將這些(鍵,值)對作為集合。 迭代該集合並將元素用作其他HashMap鍵。

像這樣的東西:

// given HashMap<String, Integer> map1:
for (Map.Entry<String, Integer> entry : map1.entrySet())
    map2.put(entry, "some string value");

或者您可以將它們存儲在這樣的一對中:

class Pair
{
    public String first;
    public Integer second;

    public Pair(String first, Integer second)
    {
        this.first = first;
        this.second = second;
    }
}

然后創建Pair - String對的HashMap:

HashMap<Pair, String> map = new HashMap<Pair, String>();

暫無
暫無

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

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