Java 如何将列表转换为HashMap
如何将其转换为:Java 如何将列表转换为HashMap,java,hashmap,type-conversion,Java,Hashmap,Type Conversion,如何将其转换为: Map<String, Integer> itemsBought 除此之外还有其他解决方案吗: hashMap.keySet().toArray(); hashMap.values().toArray(); 提前感谢您。for(条目:itemsbunk.entrySet()){ for (Entry<String, Integer> entry : itemsBought.entrySet()) { orderList.add(new O
Map<String, Integer> itemsBought
除此之外还有其他解决方案吗:
hashMap.keySet().toArray();
hashMap.values().toArray();
提前感谢您。for(条目:itemsbunk.entrySet()){
for (Entry<String, Integer> entry : itemsBought.entrySet()) {
orderList.add(new Order(entry.getKey(), entry.getValue()));
}
添加(新订单(entry.getKey(),entry.getValue());
}
我更喜欢可读性(虽然不是很多)L无论实现如何,Tarlog的回答清楚地表明,为了填充
ArrayList
,您必须迭代集合。尽管如此,我在这个答案中看不到任何价值。这个解决方案对每个键进行映射查找(这可能是O(n)最坏的情况,取决于实现,查看O(2n))。第一个解决方案同样依赖于实现,可能只是循环遍历O(n)total中的所有条目。不过,对于较小的贴图大小,这是完全不相关的。
for (Entry<String, Integer> entry : itemsBought.entrySet()) {
orderList.add(new Order(entry.getKey(), entry.getValue()));
}
for (String product : itemsBought.keySet()) {
int quantity = itemsBought.get(product);
orderList.add(new Order(product, quantity));
}