Fork me on GitHub

获取map集合中键和值的三种方式

获取map集合中键和值的三种方式

有三种。

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

public class GetMapKeyAndValue {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		HashMap<String, String> map = new HashMap<>();
		map.put("a", "aaaa");
		map.put("b", "2222");
		map.put("c", "cccc");
		map.put("d", "4444");
		
		//方法一:利用keySet方法将map中键放入到Set中,可以使用 迭代器Iterator
		Set<String> set1 = map.keySet();
		Iterator<String> it = set1.iterator();
		while(it.hasNext()) {
			String key = it.next();
			String value= map.get(key);
			System.out.println(key+"-"+value);
		}
		System.out.println("--------------------");
		
		//方法二:利用keySet方法将map中键放入到Set中,可以使用  增强for
		Set<String> set2 = map.keySet();
		for (String key : set2) {
			String value = map.get(key);
			System.out.println(key+"--"+value);
		}
		System.out.println("---------------------");
		
		//方法三:利用entrySet方法将成对的map键值放入Set中。
		Set<Map.Entry<String, String>> entry = 	map.entrySet();
		for (Map.Entry<String, String> m : entry) {
			String key = m.getKey();
			String value = m.getValue();
			System.out.println(key+"---"+value);
		}
	}

}

关于获取map集合中键和值这个用法的话,可以用到OJ题中。比如:给你一个数组,除了一个数字数量是一个,其他数字都有三个或者三个以上。就可以用Map来解决。

也可以用 ^ 运算符解决。 因为 5^5 = 0; 0^5 = 5;就可以得到答案,具体问题具体分析。

比如:https://www.cnblogs.com/strive-19970713/p/11282727.html

 

posted @ 2019-08-01 15:07  gentleKay  阅读(14974)  评论(0编辑  收藏  举报