package com.wq.Map;
import java.sql.SQLOutput;
import java.util.*;
@SuppressWarnings("all")
public class map接口遍历方法 {
public static void main(String[] args) {
Map map = new HashMap();
map.put("邓超","孙俪");
map.put("王宝强","马蓉");
map.put("宋喆","马蓉");
map.put("刘玲波",null);
map.put(null,"刘亦菲");
map.put("鹿晗","关晓彤");
// 第一组: 先取出所有的key 通过key 取出对应的value
Set keyset = map.keySet();
//(1) 增强for
System.out.println("-------------------------第一种方法-----------------");
for (Object KEY :keyset) {
System.out.println(KEY + " "+map.get(KEY));
}
//(2)迭代器
System.out.println("-----------------------第二种方法-----------------------");
Iterator iterator = keyset.iterator();
while (iterator.hasNext()) {
Object next = iterator.next();
System.out.println(next);
}
//第二组 : 把所有的values 取出
Collection values = map.values();
//这里可以使用所有的collection 使用的遍历方法
//增强for
for (Object o :values) {
System.out.println(o);
}
//迭代器
Iterator iterator1 = values.iterator();
while (iterator1.hasNext()) {
Object next = iterator1.next();
System.out.println(next);
}
//第三组 通过Entryset 来获取
System.out.println("----------------------使用entryset 第三种方法---------------------");
Set entryset = map.entrySet();
//(1) 增强for
for (Object entry :entryset) {
Map.Entry m = (Map.Entry) entry;
System.out.println(m);
}
Iterator iterator2 = entryset.iterator();
while (iterator2.hasNext()) {
Object next = iterator2.next();
//System.out.println(next);
Map.Entry n = (Map.Entry) next;
System.out.println(n.getKey()+"+ "+n.getValue());
}
}
}
-------------------------第一种方法-----------------
邓超 孙俪
宋喆 马蓉
null 刘亦菲
王宝强 马蓉
刘玲波 null
鹿晗 关晓彤
-----------------------第二种方法-----------------------
邓超
宋喆
null
王宝强
刘玲波
鹿晗
孙俪
马蓉
刘亦菲
马蓉
null
关晓彤
孙俪
马蓉
刘亦菲
马蓉
null
关晓彤
----------------------使用entryset 第三种方法---------------------
邓超=孙俪
宋喆=马蓉
null=刘亦菲
王宝强=马蓉
刘玲波=null
鹿晗=关晓彤
邓超+ 孙俪
宋喆+ 马蓉
null+ 刘亦菲
王宝强+ 马蓉
刘玲波+ null
鹿晗+ 关晓彤