1、在实际开发过程中Map 的实现类HashMap,使用极为频繁,HashMap有四种遍历方式
Map<String, String> map = new HashMap<String, String>();
// 第一种操作
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("key---" + entry.getKey() + "+++"
+ entry.getValue());
}
// 第二种操作
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> itemap = it.next();
System.out.println(itemap.getKey() + "---" + itemap.getValue());
}
// 第三种操作
for (String s : map.keySet()) {
System.out.println(s + "----" + map.get(s));
}
// 第四种操作
for (String value : map.values()) {
System.out.println(value);
}
2、List主要实现类是ArrayList,遍历形式3中
1.增强for循环
for(String str : list) {//其内部实质上还是调用了迭代器遍历方式,这种循环方式还有其他限制,不建议使用。 System.out.println(str); }
2.普通for循环
for( int i = 0 ; i < list.size() ; i++) {//内部不锁定,效率最高,但在多线程要考虑并发操作的问题。 System.out.println(list.get(i)); }
3.迭代器遍历
Iterator<String> iter = list.iterator(); while(iter.hasNext()){ //执行过程中会执行数据锁定,性能稍差,若在循环过程中要去掉某个元素只能调用iter.remove()方法。 System.out.println(iter.next()); }