我创建了一个 HashMap ,如下所示:
Map<String, String> streetno = new HashMap<String, String>();
streetno.put("3", "Sachin");
streetno.put("2", "Dravid");
streetno.put("1", "Sehwag");
streetno.put("5", "Laxman");
streetno.put("4", "Kohli");
现在我想创建一个新的 HashMap ,其中上述 HashMap 的键成为值,值成为键,如下所示:
Map<String, String> streetname = new HashMap<String, String>();
streetname.put("Sachin", "3");
streetname.put("Dravid", "2");
streetname.put("Sehwag", "1");
streetname.put("Laxman", "5");
streetname.put("Kohli", "4");
我不知道该怎么做..任何人都可以帮我解决这个问题..
最佳答案
Map<String, String> streetname = new HashMap<String, String>();
for (Entry<String,String> e : streetno.entrySet()) {
streetname.put(e.getValue(), e.getKey());
}
这里,for
循环迭代原始映射中的所有条目(即键/值对),并将它们插入到交换键和值的第二个映射中。
检查 put()
是否返回 null
可能是个好主意。如果您获得非空值,则意味着 streetno
中的值不唯一。由于这是家庭作业,我让您自己弄清楚后果以及如何最好地处理它。
关于java - 使用现有的 HashMap 创建 HashMap ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9453880/