Java中集合的遍历方式,有几种?

Java中集合遍历的几种方式:

1. for-each循环(增强for循环)

List<String> list = new ArrayList<>();
for(String str : list) {
    System.out.println(str);
}

2. 迭代器(Iterator)

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

3. Lambda表达式(Java 8及以上版本)

List<String> list = new ArrayList<>();
list.forEach(str -> System.out.println(str));

4. Stream流(Java 8及以上版本)

List<String> list = new ArrayList<>();
list.stream().forEach(str -> System.out.println(str));

5. for循环

List<String> list = new ArrayList<>();
for(int i = 0; i < list.size(); i++) {
    String str = list.get(i);
    System.out.println(str);
}

6. ListIterator(逆向迭代)

List<String> list = new ArrayList<>();
ListIterator<String> it = list.listIterator(list.size());
while(it.hasPrevious()) {
    String str = it.previous();
    System.out.println(str);
}

7. Enumeration(枚举)

Vector<String> vector = new Vector<>();
Enumeration<String> enu = vector.elements();
while(enu.hasMoreElements()) {
    String str = enu.nextElement();
    System.out.println(str);
}

需要注意的是,除了第5种方式之外,其他方式都是基于迭代器实现的。而在使用迭代器遍历集合时,应当注意对集合进行修改的情况,以防止出现ConcurrentModificationException等异常情况。

同时,在Java 8及以上版本中,推荐使用Lambda表达式或Stream流进行集合遍历操作,以提高代码的简洁性和可读性,使用起来更加简便和灵活。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容