如何在 Java 中遍历 HashMap

Mohammad Irfan 2023年1月30日 2020年10月27日
  1. 在 Java 中使用 entrySet() 方法遍历 HashMap
  2. 在 Java 中使用 foreach 遍历 HashMap
  3. 在 Java 中使用 keySet() 方法遍历 HashMap
  4. 在 Java 中使用 forEach() 方法遍历 HashMap
  5. 在 Java 中使用 streamforEach() 方法遍历 HashMap
如何在 Java 中遍历 HashMap

本教程介绍了如何在 Java 中遍历 HashMap,并列举了一些示例代码来理解它。

遍历 HashMap 有几种方法,这里我们使用 keySet()entrySet()forEach() 方法等。我们来看看例子。

在 Java 中使用 entrySet() 方法遍历 HashMap

entrySet() 方法用于获取 HashMap 中包含的映射的集合视图。我们将集合视图收集到迭代器中,并使用 while 循环进行迭代。请看下面的例子。

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

public class SimpleTesting {
	public static void main(String[] args){
		Map<Integer, Integer> map = new HashMap<>();
		map.put(2, 1020);
		map.put(3, 300);
		map.put(1, 100);
		map.put(5, 500);
		Iterator it = map.entrySet().iterator();
	    while (it.hasNext()) {
	        Map.Entry<Integer, Integer> entry = (Map.Entry)it.next();
	        System.out.println(entry.getKey() + " = " + entry.getValue()); 
	    }
	}
}

输出:

1 = 10
2 = 1020
3 = 300
5 = 500

在 Java 中使用 foreach 遍历 HashMap

这是另一种遍历 HasMap 的解决方案。在这里,我们使用 for-each 循环来遍历 HashMap 的元素。请看下面的例子。

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

public class SimpleTesting {
	public static void main(String[] args){
		Map<Integer, Integer> map = new HashMap<>();
		map.put(2, 1020);
		map.put(3, 300);
		map.put(1, 100);
		map.put(5, 500);
		for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
	        System.out.println(entry.getKey() + " = " + entry.getValue()); 
	    }
	}
}

输出:

1 = 10
2 = 1020
3 = 300
5 = 500

在 Java 中使用 keySet() 方法遍历 HashMap

keySet() 方法用于收集所有的键,并创建一个集合,进一步用于遍历 HashMap 的元素。请看下面的例子。

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

public class SimpleTesting {
	public static void main(String[] args){
		Map<Integer, Integer> map = new HashMap<>();
		map.put(2, 1020);
		map.put(3, 300);
		map.put(1, 100);
		map.put(5, 500);
		for (Integer key : map.keySet()) {
	        System.out.println(key + " = " + map.get(key)); 
	    }
	}
}

输出:

1 = 10
2 = 1020
3 = 300
5 = 500

在 Java 中使用 forEach() 方法遍历 HashMap

我们可以使用 forEach() 方法来遍历 HashMap 的元素。forEach() 方法是 Java 8 中引入的新方法,可用于 IteratableStream 接口中。请看下面的例子。

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

public class SimpleTesting {
	public static void main(String[] args){

		Map<Integer, Integer> map = new HashMap<>();
		map.put(2, 1020);
		map.put(3, 300);
		map.put(1, 100);
		map.put(5, 500);
		map.forEach((key,value)->{
			System.out.println(key+" = "+value);
		});
	}
}

输出:

1 = 10
2 = 1020
3 = 300
5 = 500

在 Java 中使用 streamforEach() 方法遍历 HashMap

我们可以使用流来遍历元素。在这里,我们使用 entrySet() 来收集 Hashmap 元素,这些元素将进一步遍历流的 forEach() 方法。

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

public class SimpleTesting{
	public static void main(String[] args){
		Map<Integer, String> map = new HashMap<>();
		map.put(10, "Ten");
		map.put(100, "Hundred");
		map.put(1000, "Thousand");
		map.entrySet()
		.stream()
		.forEach(System.out::println);
	}
}

输出:

1 = 10
2 = 1020
3 = 300
5 = 500

相关文章 - Java HashMap