For循环,这里的listMap必须在for循环之前new一下(循环外面new ArrayList对象),不然每次循环加入到list中,下次循环就把上次的数据清空了,最后存到list中是最后一条数据。
2015-12-24 20:05
411 查看
PositionLog p1 = new PositionLog();
p1.setNonBalPosition(new BigDecimal(1.1));
p1.setBalPosition(new BigDecimal(1));
p1.setBankId("9901");
p1.setProductId("Cbot/CNY_11");
p1.setInstrumentId("MARGIN_COM");
PositionLog p2 = new PositionLog();
p2.setNonBalPosition(new BigDecimal(2.2));
p2.setBalPosition(new BigDecimal(2));
p2.setBankId("9901");
p2.setProductId("Cbot/CNY_12");
p2.setInstrumentId("MARGIN_COM");
List<PositionLog> positionLogList =new ArrayList<PositionLog>();
positionLogList .add(p1);
positionLogList .add(p2);
List<Map<String,String>> listMap = null;
for(PositionLog positionLog: positionLogList){
listMap = new ArrayList<Map<String,String>>(); //这里的listMap必须要放到循环外层new一下ArrayList,不然每次循环加入到list中,下次循环new对象就把上次加入的数据 给清空了的,最后存到list中的是最后一条数据。
Map<String,String> positionMap = new HashMap<String,String>();
positionMap.put("nonBalPosition", positionLog.getNonBalPosition());
positionMap.put("balPosition", positionLog.getBalPosition());
positionMap.put("productId", positionLog.getProductId());
positionMap.put("bankId", positionLog.getBankId());
positionMap.put("instrumentId", positionLog.getInstrumentId());
listMap.add(positionMap);
)
p1.setNonBalPosition(new BigDecimal(1.1));
p1.setBalPosition(new BigDecimal(1));
p1.setBankId("9901");
p1.setProductId("Cbot/CNY_11");
p1.setInstrumentId("MARGIN_COM");
PositionLog p2 = new PositionLog();
p2.setNonBalPosition(new BigDecimal(2.2));
p2.setBalPosition(new BigDecimal(2));
p2.setBankId("9901");
p2.setProductId("Cbot/CNY_12");
p2.setInstrumentId("MARGIN_COM");
List<PositionLog> positionLogList =new ArrayList<PositionLog>();
positionLogList .add(p1);
positionLogList .add(p2);
List<Map<String,String>> listMap = null;
for(PositionLog positionLog: positionLogList){
listMap = new ArrayList<Map<String,String>>(); //这里的listMap必须要放到循环外层new一下ArrayList,不然每次循环加入到list中,下次循环new对象就把上次加入的数据 给清空了的,最后存到list中的是最后一条数据。
Map<String,String> positionMap = new HashMap<String,String>();
positionMap.put("nonBalPosition", positionLog.getNonBalPosition());
positionMap.put("balPosition", positionLog.getBalPosition());
positionMap.put("productId", positionLog.getProductId());
positionMap.put("bankId", positionLog.getBankId());
positionMap.put("instrumentId", positionLog.getInstrumentId());
listMap.add(positionMap);
)
相关文章推荐
- 高中数学必修1 之 函数
- Linux常见问题的处理方法(长期更新)
- 测试环境LAMP用YUM快速部署。
- C++面试中string类的一种正确写法
- hdu 3466 Proud Merchants(01背包)(微变化,要理解)
- QT中的show()与exec()区别
- 愚人节的礼物(杭电1870)(水题一道~)
- nexus中自定义仓库
- [LeetCode116]Path Sum
- BZOJ 1012 最大数
- TCP 滑动窗口 (流量控制)
- 程序设计箴言
- 【C++标准】之 C++11——auto特性
- 解决 ubuntu14.04下的gedit中文乱码
- 使用System Sound Services 播放音效(最简单,比较底层),调用AudioServicesPlaySystemSound()
- 对 C++ 历史的个人观点
- Oracle创建表空间、创建用户以及授权、查看权限
- str.replace(/[ ]/g, "");
- 【Unity游戏开发之十四】iOS9 ReplayKit录制视频
- LeetCode 039 Combination Sum