【发布时间】:2015-12-22 16:29:38
【问题描述】:
如何总结两个不同地图中的所有值?
Map<String, List<String>> map = new HashMap<String, List<String>>();
List<String> totalValOne= new ArrayList<String>();
List<String> totalValTwo= new ArrayList<String>();
map1.put("totalPriceSet1", totalValOne);
map2.put("totalPriceSet2", totalValTwo);
我得到了所有的价值
String PriceValues1 = "";
for (int i = 0; i < map1.size(); i++) {
System.out.println(map1.size());
for (List<String> value : map1.values()) {
for (String tot : value) {
PriceValues1 = tot;
System.out.println("values..... "+ tot);
}
}
//--------
String PriceValues2 = "";
for (int i = 0; i < map2.size(); i++) {
System.out.println(map2.size());
for (List<String> value : map2.values()) {
for (String tot : value) {
PriceValues2 = tot;
System.out.println("values..... "+ tot);
}
}
我正在尝试将两个地图的值一一相加。
例如:
totalPriceSet1 {1,2,3,4}
totalPriceSet2 {2,3,4,5}
我希望两者的总和为,
Sum {3,5,7,9}
【问题讨论】:
-
有什么理由将值存储为字符串而不是整数?
-
是的,因为我为所有值附加了
$符号。 -
@sam 您应该查看Money as explained by Martin Fowler 的一个模式,这是一个相关的post on stackoverflow
-
@sam 您始终可以将值存储为整数,进行数字处理,然后当您需要显示/附加 $ 符号时,您可以简单地使用 Integer.toString(num) 或 '"$" + 数字'
标签: java dictionary