;
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 这样子 会有空指针 |