场景

Java中遍历数组或者List时可以使用每个元素的类型的变量去foreach

如果想要遍历一个map怎样遍历。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

获取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();

 

posted on 2020-08-18 16:36  霸道流氓  阅读(1008)  评论(0编辑  收藏  举报