我想将值放在HashMap中,如下所示,
map1.put("A",3);
map1.put("A",5);
map1.put("B",4);
map1.put("B",8);
现在我想将(“A”,3)键/值对作为其他地图的关键字,如, 让我们说(“A”,3)对其他人来说是同样的关键 map2.put(key1,abc);
其他人也一样。能帮我这样做吗???
答案 0 :(得分:2)
您可以获得第一个hashMap entrySet
并将其用作第二个hashMap的键。
entrySet返回
设置此地图中包含的映射的视图
例如,
1)设置firstMapEntries = map1.entrySet();
2)创建第二个地图
3)迭代firstMapEntries。
4)添加到第二个地图secondMap.put(firstMapEntry,“abc”)
答案 1 :(得分:0)
您可以使用entrySet
方法将这些(键,值)对作为一组。迭代该集合并将元素用作其他HashMap
中的键。
这样的事情:
// given HashMap<String, Integer> map1:
for (Map.Entry<String, Integer> entry : map1.entrySet())
map2.put(entry, "some string value");
答案 2 :(得分:0)
或者您可以将它们存储在这样的一对中:
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>();