Map、List、Set在Java中的各种遍历方法

一、Map的4种遍历

Map<String, String> map = new HashMap<String, String>();  
map.put("姓名", "张三");  
map.put("属性", "好人");  

1、普遍使用,二次取值

for (String key : map.keySet()) {  
    System.out.println(key + map.get(key));  
}  

2、通过Map.entrySet使用iterator遍历key和value

Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();  
while (iterator.hasNext()) {  
    Map.Entry<String, String> entry = iterator.next();  
    System.out.println(entry.getKey() + entry.getValue());  
}  

3、通过Map.entrySet遍历key和value(推荐容量大时使用)

for (Map.Entry<String, String> entry : map.entrySet()) {  
    System.out.println(entry.getKey() + entry.getValue());  
}  

4、通过Map.values()遍历所有的value,但不能遍历key

for (String value : map.values()) {  
    System.out.println(value);  
}  

二、List的3种遍历

List<String> list = new ArrayList<String>();  
list.add("one");  
list.add("two");  

1、普遍使用,效率最高

for (int i = 0; i < list.size(); i++) {  
    System.out.println(list.get(i));  
}  

2、迭代遍历

Iterator<String> iterator = list.iterator();  
while(iterator.hasNext()){  
    System.out.println(iterator.next());  
}  

3、for循环遍历

for(String data : list){  
    System.out.println(data);  
}  

三、Set的2种遍历

Set<String> set = new HashSet<String>();  
set.add("one");  
set.add("two");  
set.add("one");  

1、迭代遍历

Iterator<String> iterator = set.iterator();  
while (iterator.hasNext()) {  
    System.out.println(iterator.next());  
}  

2、for循环遍历

for (String data : set) {  
    System.out.println(data);  
}  
原文地址:https://www.cnblogs.com/jmsjh/p/7372953.html