Java中遍历数组或者List时可以使用每个元素的类型的变量去foreach
如果想要遍历一个map怎样遍历。
实现
获取Map数据的方法
Map<Long, List<KqsjTian>> bmListMap = new HashMap<Long, List<KqsjTian>>();
bmListMap = kqsjTianList.stream().collect(Collectors.groupingBy(kqsjTian -> kqsjTian.getBmid()));
这是一个key为Long型,value为一个对象list的Map,怎样遍历这个Map
for (Map.Entry<Long, List<KqsjTian>> entry : bmListMap.entrySet()) {
List<KqsjTian> currnrtbmList = entry.getValue();
for (KqsjTian kqsjTian:currnrtbmList) {
//计算考勤人数
if(kqsjTian.getKqzt()!=null && Constants.KQZT_ZC.contains(kqsjTian.getKqzt()))
{
kqrs++;
}
}
}
每一个entry是一组某属性相同的list,要获取每一个entry的key
entry.getKey()
获取每个的value
List<KqsjTian> currnrtbmList = entry.getValue();