最开始走了弯路,在循环外面新建了对象,然后保存在list集合里面的东西被覆盖,全是最后一次设置的值;
config是方法的参数,里面有两个值appIds、companyCodes 封装的是list,要进行组合
例如:appIds里的值是A 、B;
companyCodes的值是 1 、2;
希望得到 组合 appId=A 、companyCode=1
appId=A 、companyCode=2
appId=B 、companyCode=1
appId=B 、companyCode=2
下面为方法实现:
List insertList = new ArrayList();
List appIds = config.getAppIds();
List companyCodes = config.getCompanyCodes();
for (Long appId:appIds) {
for (String companyCode:companyCodes) {
List itemValueList= Arrays.asList(config.getItemValue().split(","));
for(String itemValue : itemValueList){
MobileAccessConfig res=new MobileAccessConfig(); //对象要在循环里面建,在外面建值会被覆盖
res.setAppId(appId);
res.setCompanyCode(companyCode);
res.setItemType(config.getItemType());
res.setItemValue(itemValue);
res.fillOperationInfo(config.getCreatedBy());
insertList.add(res);
}
}
}