1. 程式人生 > 實用技巧 >Java中怎樣遍歷Map的所有資料

Java中怎樣遍歷Map的所有資料

場景

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