List集合遍历:

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());
}

4、List迭代器遍历

ListIterator<String> stringListIterator = list.listIterator();
while (stringListIterator.hasNext()){
        System.out.println(stringListIterator.next());
}

Map集合遍历:

1、keySet获取键的set集合

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

2、使用entrySet()来获取Entry类型的set集合

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