;
List<Map<String, Object>> maps = baseMapper.selectMaps(queryWrapper);
BigDecimal totalRecharge=new BigDecimal(0);
maps.stream().findFirst().ifPresent(
map->{
totalRecharge = (BigDecimal) map.get("totalRecharge");
}
);
List<Map<String, Object>> maps = baseMapper.selectMaps(queryWrapper);
final BigDecimal[] totalRecharge = {new BigDecimal(0)};
maps.stream().findFirst().ifPresent(
map->{
totalRecharge[0] = (BigDecimal) map.get("totalRecharge");
}
);
1
entertainyou 2019-10-09 17:47:11 +08:00
为啥不直接:
BigDecimal bigDecimal = maps.stream().findFirst().map(m -> (BigDecimal) m.get("totalRecharge")).orElse(0) ? |
2
qwerthhusn 2019-10-09 18:02:14 +08:00
如果用的是 java 11 的话,可以这样玩
var xxxRef = new Object() { String xxx; }; xxxRef.xxx = "123"; 而且这样的话,可以一次性将多个变量括进去。 如果 JDK10 之前,就用数组吧,但是感觉略奇怪。 |
3
rqxiao OP @entertainyou 这样子 会有空指针
|