Java中遍历哈希表的常用方法

70 阅读1分钟

哈希表的两种常用便利方法

通过keySet

Map<Integer, Integer> map = new HashMap<>();
for (Integer key : map.keySet()) {
    System.out.println(map.get(key));
}

通过entrySet(常用方法)

Map<Integer, Integer> map = new HashMap<>();
for (Map.Entry<Integer, Integer> entry : map.entrySet()){
    System.out.println(entry.getKey());
    System.out.println(entry.getValue());
}

习题

通过一道简单题练习遍历哈希表取值: LeetCode 2404题

习题题解代码

class Solution {
    public int mostFrequentEven(int[] nums) {
        Map<Integer, Integer> map = new HashMap<>();
        for (int num : nums){
            if(num % 2 == 0){ // nums数组中所有偶数记入哈希表中
                map.put(num, map.getOrDefault(num, 0) + 1);
            }
        }
        int res = -1, count = 0;
        for (Map.Entry<Integer, Integer> entry : map.entrySet()){
            if(entry.getValue() > count || (entry.getValue() == count && entry.getKey() < res)){
                count = entry.getValue();
                res = entry.getKey();
            }
        }
        return res;
    }
}