public class Stock
{
private String productunitName;
private Integer productId;
private BigDecimal productNum;
private String productColor;set get ...
}
相同productId,并且相同productColor的合并到一起,并且将productNum相加。
举例:
productId productColor productNum
1 黑 12
2 黑 2
2 白 1
1 黑 2
2 黑 1合并之后得到结果
productId productColor productNum
1 黑 13
2 白 1
2 黑 3
解决方案 »
- 免费获取java教学光盘,您只需付邮费
- 实现字符串的反向输出
- 有用过exe4j的?java怎么激活exe4j 的"自动关闭"(auto-off)模式,把启动画面隐藏
- 怎么样从一个字符串中分离我想要的字符段放入数组中
- 来个稍微高点的高手--牛B最好(服务端和多个客户端问题)
- 一个java applet的程序.怎么找到APPLET文件路径
- 请教: java.util.ResourceBundle 这个类一般是干什么用的?
- 关于 和Array (数组)?
- 希望共同进步 ,我是菜鸟oicq:18963652
- jdbc不支持中文查询吗?
- 区分抽象工厂模式中的产品族和等级结构
- java hashset 生成随机数问题
List<Stock> list = ...
Map<String, BigDecimal> map = new LinkedHashMap<String, BigDecimal>();
for (Stock stock : list) {
String key = stock.getProductId() + "####" + stock.getProductColor();
if (map.containsKey(key)) {
map.put(key, map.get(key).add(stock.getProductNum()));
} else {
map.put(key, stock.getProductNum());
}
}
for (Map.Entry<String, BigDecimal> entry : map.entrySet()) {
String[] array = entry.getKey().split("####");
System.out.println(array[0] + "\t" + array[1] + "\t" + entry.getValue());
}