/*
* 遍历List/Set/Map集合的一些常用方法
*/
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class TestMapListSet {
public static void main(String[] args) {
// 遍历List集合 :
// 生成一个简单地List集合[aa,bb,cc,dd]
List<String> list = new ArrayList<>();
list.add("aa");
list.add("bb");
list.add("cc");
list.add("dd");
// 方法一:普通的for循环
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
// 方法二:增强for循环,foreach循环
for (String s : list) {
System.out.println(s);
}
// 方法三:使用迭代器(1)for循环
for (Iterator<String> iter = list.iterator(); iter.hasNext();) {
String temp = (String) iter.next();
System.out.println(temp);
}
// 方法四:使用迭代器(2)while循环
Iterator<String> it = list.iterator();
while (it.hasNext()) {
String temp = (String) it.next();
if (false) {
it.remove(); // 如果在遍历的过程中需要删除部分元素的话,推荐使用此方法
}
System.out.println(temp);
}
// 遍历Set集合:
// 生成一个简单的Set集合[aa,bb,cc,dd]
Set<String> set = new HashSet<>();
set.add("aa");
set.add("bb");
set.add("cc");
set.add("dd");
// 方法一:增强for循环:foreach循环
for (String s : set) {
System.out.println(s);
}
// 方法二:使用迭代器
for (Iterator<String> iter = set.iterator(); iter.hasNext();) {
String temp = (String) iter.next();
System.out.println(temp);
}
// 遍历Map集合:
// 生成一个简单地Map集合[512--aa,513--bb,514--cc,515--dd]
Map<Integer, String> map = new HashMap<>();
map.put(512, "aa");
map.put(513, "bb");
map.put(514, "cc");
map.put(515, "dd");
// 方法一:根据Key获取Value,foreach循环
Set<Integer> keySet = map.keySet();
for (Integer i : keySet) {
System.out.println(i + "--" + map.get(i));
}
// 方法二:使用迭代器,使用entrySet
Set<Map.Entry<Integer, String>> set1 = map.entrySet();
for (Iterator<Map.Entry<Integer, String>> iter = set1.iterator(); iter.hasNext();) {
Map.Entry<Integer, String> temp = iter.next();
System.out.println(temp.getKey() + "--" + temp.getValue());
}
}
}