Map集合的两种遍历方式

代码:

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

public class MapFor {

	public static void main(String[] args) {
		//创建一个map集合
		Map<Integer, String> map = new HashMap<Integer, String>();
		map.put(1, "a");
		map.put(11, "a");
		map.put(12, "hello");
		map.put(999, "你好");
		
		getFor1(map);
		getFor2(map);
		
	}

	
	//遍历方法一
	public static void getFor1(Map<Integer, String> map) {
		//  ketSet() : 将map集合中的所有key值获取到,放到一个set集合中
		Set<Integer> set = map.keySet();
		
		// 迭代器遍历方式
		//循环将每一个key的值获取到,循环set集合
		Iterator<Integer> it = set.iterator();
		while (it.hasNext()) {
			int key = it.next();
			String value = map.get(key);
			System.out.println(key+"---"+value);
		}
		
		// 增强for的遍历方式
		for (int key : set) {
			String value =map.get(key);
			System.out.println(key+"++++++"+value);
		}
		
	}
	
	//遍历方法二
	public static void getFor2(Map<Integer, String> map) {
		
		// 1. 使用map中方法,entrySet() : 获取到map集合中键值对映射关系对象的集合
		Set<Map.Entry<Integer, String>> set = map.entrySet();
		
		// 2. 将set集合中的每一个映射关系对象获取到
		// 增强for的遍历方式
		for (Map.Entry<Integer, String> entry : set) {
			// 获取到映射关系中的key值
			int key = entry.getKey();
			// 获取到映射关系中的value值
			String value = entry.getValue();
			System.out.println(key+"********"+value);
		}
		
		// 3. 使用迭代器进行遍历
		Iterator<Map.Entry<Integer, String>> it = set.iterator();
		while (it.hasNext()) {
			Map.Entry<Integer, String> entry =  it.next();
			int key = entry.getKey();
			String value = entry.getValue();
			System.out.println(key+"________"+value);
		}
		
		
	}
}

结果:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Groovy中,可以使用map集合的each方法对map集合进行遍历。each方法的函数原型定义了两种方式来迭代映射。第一种方式是通过传递键和值到闭包中,第二种方式是通过传递映射的条目到闭包中。通常情况下,无法保证地图内容的处理顺序,但是特殊形式的地图,比如树形图,会按照地图的自然顺序处理内容。 下面是一个示例代码,展示了如何使用each方法对map集合进行遍历: ```groovy class Test { static void main(args) { // 创建键值对 // 键 Key 可以不使用引号,可以使用单引号 '',也可以使用双引号 "" def map = [J:"Java", "K":"Kotlin", 'G':"Groovy"] // 遍历 map 集合 map.each { key, value -> println "${key} = ${value}" } } } ``` 以上代码会输出map集合中的键值对,每个键值对都会被传递到闭包中,并打印出键和值的对应关系。 参考文献: Groovy集合遍历 (使用for循环遍历集合 | 使用集合的each方法遍历集合 | 集合的each方法返回值分析)集合 [3] 代码示例<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【Groovy】map 集合 ( map 集合遍历 | 使用 map 集合的 each 方法遍历 map 集合 | 代码示例 )](https://blog.csdn.net/han1202012/article/details/122172648)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值