Map遍历。。。。

List与Set都提供了遍历的方法。而Map则没有,看了api总结了3个遍历方法。

1,常用的,map集合有个values方法,意思将map的值返回为Collection视图,Collection是不是很熟悉,List和Set都继承了他。所以他有iterator方法,迭代器、那么可以把他值遍历出来了,。注意:map是无序的,所以遍历出来后是无训的。。

 

2.这个是通过key取值。map有个keyset方法,返回键的Set视图,set中不能存相同元素与map键不能相同正好。得到含有key的Set集合遍历set取值。

 

3,这个用到了Map.Entry这个东东。map的方法entrySet返回一个set集合set的泛型就是一个Map.Entry,每个Map.Entry都是一个map集合的键值对。调用set迭代器遍历出Map.Entry然后使用Map.Entry的getValue()方法。

 

代码

public class MapTest {
	//通过values方法
	private void MapTest1(HashMap<String, Object> map){
		Collection<Object> c=map.values();
		Iterator<Object> i=c.iterator();
		for(;i.hasNext();){
			System.out.println(i.next());
		}
	}
	//通过keyset
	private void MapTest2(HashMap<String, Object> map){
		Set<String> set=map.keySet();
		Iterator<String> i=set.iterator();
		for(;i.hasNext();){
			System.out.println(map.get(i.next()));
		}
	}
	//通过Map.Entry
	private void MapTest3(HashMap<String, Object> map){
		Set<Map.Entry<String, Object>> set=map.entrySet();
		Iterator<Map.Entry<String, Object>> i=set.iterator();
		for(;i.hasNext();){
			System.out.println(i.next().getValue());
		}
	}
	public static void main(String[] args) {
		HashMap<String, Object> map=new HashMap<String, Object>();
		map.put("1", "a");
		map.put("2", "b");
		map.put("3", "c");
		map.put("4", "d");
//	new MapTest().MapTest1(map);
//	new MapTest().MapTest2(map);
	new MapTest().MapTest3(map);
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值