在Java中,哈希表通常使用HashMap类来实现。遍历HashMap有以下几种方法:
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);
}
}
}
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);
}
}
}
你还可以使用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);
}
}
}
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)的几种方法。