map集合的四种遍历方式:
public class MapDemo2 {
public static void main(String[] args) {
//创建集合对象
Map<String, String> map = new HashMap<String, String>();
//创建元素并添加到集合
map.put("梨梨", "美丽");
map.put("熊熊", "帅气");
map.put("菜菜", "乖巧");
map.put("哈哈", "搞笑");
//第一种
Set<String> keySet = map.keySet(); //1、得到Map集合中所有的键的集合keySet
for(String key:keySet){ //2、遍历键的集合keySet
String value = map.get(key); //2、根据键去找对应的值
System.out.println(key + "=" + value);
}
//第二种
Set<Map.Entry<String, String>> mapset = map.entrySet(); //1、获取所有map集合中所有键值对对象的集合
for(Map.Entry<String, String> ms:mapset){ //2、遍历键值对对象的结合,得到每一个键值对对象
String key = ms.getKey();
String value = ms.getValue();
System.out.println(key + "=" + value);
}
//第三种
Iterator<Map.Entry<Integer, String>> it = map.entrySet().iterator(); //取得所有键值对对象的迭代器
while (it.hasNext()) {
Map.Entry<Integer, String> entry = it.next(); //迭代得到的每一个与元素都是一个键值对对象
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
//第四种。通过Map.values()遍历所有的value,但不能遍历key
for (String v : map.values()) {
System.out.println("value= " + v);
}
}
}
输出:
哈哈=搞笑
梨梨=美丽
熊熊=帅气
菜菜=乖巧