Java

Java哈希表的遍历方法

小樊
81
2024-09-09 18:50:51
栏目: 编程语言

在Java中,哈希表通常使用HashMap类来实现。遍历HashMap有以下几种方法:

  1. 使用for-each循环和entrySet()方法

entrySet()方法返回一个包含HashMap中所有条目的Set集合。你可以使用for-each循环遍历这个集合。每个元素都是一个Map.Entry对象,包含键和值。

import java.util.HashMap;
import java.util.Map;

public class Main {
    public static void main(String[] args) {
        HashMap<String, Integer> hashMap = new HashMap<>();
        hashMap.put("one", 1);
        hashMap.put("two", 2);
        hashMap.put("three", 3);

        for (Map.Entry<String, Integer> entry : hashMap.entrySet()) {
            String key = entry.getKey();
            Integer value = entry.getValue();
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}
  1. 使用for-each循环和keySet()方法

keySet()方法返回一个包含HashMap中所有键的Set集合。你可以使用for-each循环遍历这个集合,然后使用get()方法获取每个键对应的值。

import java.util.HashMap;

public class Main {
    public static void main(String[] args) {
        HashMap<String, Integer> hashMap = new HashMap<>();
        hashMap.put("one", 1);
        hashMap.put("two", 2);
        hashMap.put("three", 3);

        for (String key : hashMap.keySet()) {
            Integer value = hashMap.get(key);
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}
  1. 使用迭代器

你还可以使用Iterator来遍历HashMap。首先,使用entrySet()方法获取条目集合,然后使用iterator()方法获取迭代器。

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class Main {
    public static void main(String[] args) {
        HashMap<String, Integer> hashMap = new HashMap<>();
        hashMap.put("one", 1);
        hashMap.put("two", 2);
        hashMap.put("three", 3);

        Iterator<Map.Entry<String, Integer>> iterator = hashMap.entrySet().iterator();
        while (iterator.hasNext()) {
            Map.Entry<String, Integer> entry = iterator.next();
            String key = entry.getKey();
            Integer value = entry.getValue();
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}
  1. 使用Java 8的forEach方法

如果你使用的是Java 8或更高版本,可以使用forEach方法结合Lambda表达式进行遍历。

import java.util.HashMap;

public class Main {
    public static void main(String[] args) {
        HashMap<String, Integer> hashMap = new HashMap<>();
        hashMap.put("one", 1);
        hashMap.put("two", 2);
        hashMap.put("three", 3);

        hashMap.forEach((key, value) -> System.out.println("Key: " + key + ", Value: " + value));
    }
}

以上就是在Java中遍历哈希表(HashMap)的几种方法。

0
看了该问题的人还看了