杰瑞科技汇

java遍历arraylist

Java遍历ArrayList的多种方法

在Java中,遍历ArrayList有几种常见的方法,下面我将介绍最常用的几种方式:

java遍历arraylist-图1
(图片来源网络,侵删)

使用for循环(传统方式)

ArrayList<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Orange");
for (int i = 0; i < list.size(); i++) {
    System.out.println(list.get(i));
}

使用增强for循环(for-each)

ArrayList<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Orange");
for (String item : list) {
    System.out.println(item);
}

使用Iterator迭代器

ArrayList<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Orange");
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
    String item = iterator.next();
    System.out.println(item);
}

使用Java 8 Stream API

ArrayList<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Orange");
list.stream().forEach(item -> System.out.println(item));

或者更简洁的写法:

list.forEach(System.out::println);

使用ListIterator(支持双向遍历)

ArrayList<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Orange");
ListIterator<String> listIterator = list.listIterator();
while (listIterator.hasNext()) {
    System.out.println(listIterator.next());
}
// 反向遍历
while (listIterator.hasPrevious()) {
    System.out.println(listIterator.previous());
}

性能比较

  • for循环:适合需要索引的场景,性能较好
  • for-each:代码简洁,是遍历集合的首选方式
  • Iterator:适合在遍历过程中需要删除元素的情况
  • Stream API:适合需要并行处理或复杂操作的场景

注意事项

  1. 在遍历过程中不要直接修改集合(如添加/删除元素),除非使用Iterator的remove()方法
  2. 对于大型集合,考虑使用for-each或Stream API以提高代码可读性
  3. 如果需要索引信息,可以使用传统的for循环或ListIterator

选择哪种方法取决于你的具体需求和代码风格偏好。

java遍历arraylist-图2
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇