已获取listA[{id=1, num=1, opname=西瓜},{id=2, num=2, opname=香蕉}, {id=3, num=3, opname=苹果}, {id=4, num=4, opname=橘子}]需要遍历list,同时算每行的概率,1/10=10%最终获取listB[{id=1, num=1, opname=西瓜,p=10%},{id=2, num=2, opname=香蕉,p=20%}, {id=3, num=3, opname=苹果,p=30%}, {id=4, num=4, opname=橘子,p=40%}]如何把listA变成listB,listB最好不要是new ArrayList出来的
listA是从数据库中获取,现在需要对这个listA做些处理,增加1个概率,每种水果个数占总数的百分比
2 回答
郎朗坤
TA贡献1921条经验 获得超9个赞
public static void main(String[] args){
List<Map<String,String>> listA = new ArrayList<Map<String,String>>();
Map<String,String> map = new HashMap<String, String>();
map.put("id", "1");
map.put("num", "1");
map.put("opname", "西瓜");
listA.add(map);
System.out.println(listA.toString());
for(Map<String,String> pa : listA){
pa.put("p", BigDecimal.valueOf(Long.parseLong(pa.get("num"))).divide(BigDecimal.valueOf(10)).multiply(BigDecimal.valueOf(100))+"%");
}
System.out.println(listA.toString());
}
out:
[{id=1, num=1, opname=西瓜}]
[{id=1, num=1, p=10.0%, opname=西瓜}]
添加回答
举报
0/150
提交
取消