Map集合的输出

来源:互联网 发布:12864显示一个数组 编辑:程序博客网 时间:2024/05/16 12:36

总结思路:只要碰到了集合输出的操作,就一定使用Iterator接口,因为这是最标准的做法。

注意:输出key和value存放的集合接口不一样:
key 是Set集合
value 是Collection集合


package zz.mapdemo;import java.util.Map;import java.util.HashMap;import java.util.Set;import java.util.Iterator;// Map输出全部的keypublic class IteratorDemo01{public static void main(String []args){Map<String, String> map = null;// 声明Map对象,并指定泛型类型map = new HashMap<String, String>();// map.put("新浪网址:", "www.sina.com");// 增加内容map.put("百度网址:", "www.baidu.com");map.put("csdn网址:", "www.csdn.com");Set<String> keys = map.keySet();// 得到全部的key变成Set集合Iterator<String> iter = keys.iterator();// 实例化Iterator对象while (iter.hasNext()){String str = iter.next();// 取出keySystem.out.println(str);// 输出key}}}

新浪网址:
csdn网址:
百度网址:

package zz.mapdemo;import java.util.Map;import java.util.HashMap;//import java.util.Set;import java.util.Iterator;import java.util.Collection;//values()方法返回类型是Collection// Map输出全部的valuepublic class IteratorDemo02{public static void main(String []args){Map<String, String> map = null;// 声明Map对象,并指定泛型类型map = new HashMap<String, String>();// map.put("新浪网址:", "www.sina.com");// 增加内容map.put("百度网址:", "www.baidu.com");map.put("csdn网址:", "www.csdn.com");Collection<String> values = map.values();// 得到全部的value变为Collection集合Iterator<String> iter = values.iterator();// 实例化Iterator对象while (iter.hasNext()){String str = iter.next();System.out.println(str);// 输出value}}}

www.sina.com
www.csdn.com
www.baidu.com

注意:不能直接使用迭代输出Map中的全部内容
(1)、将Map接口的实例通过entrySet()方法变为Set接口对象
(2)、通过Set接口实例化为Iterator对象
(3)、通过Iterator迭代输出,每个内容都是Map.Entry的对象
(4)、通过Map.Entry进行key -> value的分离

package zz.mapdemo;import java.util.Map;import java.util.HashMap;import java.util.Set;import java.util.Iterator;// Map输出最标准的操作流程public class IteratorDemo04{public static void main(String []args){Map<String, String> map = null;// 声明Map对象,并指定泛型类型map = new HashMap<String, String>();// map.put("新浪网址:", "www.sina.com");// 增加内容map.put("百度网址:", "www.baidu.com");map.put("csdn网址:", "www.csdn.com");// 输出方式一:Iterator输出Set<Map.Entry<String, String>> allSet = null;allSet = map.entrySet();// 将Map接口实例变为Set接口实例Iterator<Map.Entry<String, String>> iter = null;iter = allSet.iterator();// 实例化Iterator对象while (iter.hasNext()){Map.Entry<String, String> me = iter.next();// 找到Map.Entry的每对数据的实例System.out.println(me.getKey() + "-->" + me.getValue());// 输出key 和 value}// 输出方式二:foreach输出/* for (Map.Entry<String, String> me : map.entrySet()){System.out.println(me.getKey() + "-->" + me.getValue());// 输出key 和 value}*/}}

新浪网址:-->www.sina.com
csdn网址:-->www.csdn.com
百度网址:-->www.baidu.com

原创粉丝点击