当前位置:首页 > Java

java如何遍历容器

2026-03-22 17:28:09Java

遍历List集合

使用for循环或增强for循环遍历List

List<String> list = Arrays.asList("A", "B", "C");
// 传统for循环
for (int i = 0; i < list.size(); i++) {
    System.out.println(list.get(i));
}
// 增强for循环
for (String item : list) {
    System.out.println(item);
}

使用IteratorListIterator(支持双向遍历):

java如何遍历容器

Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
    System.out.println(iterator.next());
}
// ListIterator示例
ListIterator<String> listIterator = list.listIterator();
while (listIterator.hasNext()) {
    System.out.println(listIterator.next());
}

遍历Set集合

Set的遍历方式与List类似,但无法通过索引访问:

Set<String> set = new HashSet<>(Arrays.asList("X", "Y", "Z"));
// 增强for循环
for (String item : set) {
    System.out.println(item);
}
// 使用Iterator
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
    System.out.println(iterator.next());
}

遍历Map集合

通过keySet()entrySet()values()遍历Map

java如何遍历容器

Map<String, Integer> map = new HashMap<>();
map.put("Key1", 1);
map.put("Key2", 2);
// 遍历Key
for (String key : map.keySet()) {
    System.out.println(key + ": " + map.get(key));
}
// 遍历Entry(推荐,效率更高)
for (Map.Entry<String, Integer> entry : map.entrySet()) {
    System.out.println(entry.getKey() + ": " + entry.getValue());
}
// 仅遍历Value
for (Integer value : map.values()) {
    System.out.println(value);
}

使用Java 8 Stream API

通过forEach和Stream流式操作遍历:

List<String> list = Arrays.asList("A", "B", "C");
list.forEach(item -> System.out.println(item));
// 使用方法引用
list.forEach(System.out::println);
// Map的Stream遍历
map.entrySet().stream()
    .forEach(entry -> System.out.println(entry.getKey()));

遍历数组

数组可通过传统for循环或增强for循环遍历:

String[] array = {"A", "B", "C"};
for (int i = 0; i < array.length; i++) {
    System.out.println(array[i]);
}
for (String item : array) {
    System.out.println(item);
}

注意事项

  • 使用Iterator时,避免在遍历过程中直接修改集合(如删除元素),应使用Iterator.remove()方法。
  • ConcurrentModificationException异常常因遍历时直接修改集合导致。
  • Java 8的forEach对性能敏感的场景可能不如传统循环高效。

标签: 遍历容器
分享给朋友:

相关文章

vue实现遍历多维数组

vue实现遍历多维数组

遍历多维数组的方法 在Vue中遍历多维数组可以通过多种方式实现,以下是几种常见的方法: 使用v-for指令嵌套 Vue的v-for指令可以嵌套使用来遍历多维数组。这种方法适用于需要在模板中直接渲染多…

vue如何实现遍历组件

vue如何实现遍历组件

Vue 遍历组件的实现方法 使用 v-for 指令 Vue 的 v-for 指令可以用于遍历数组或对象,动态生成多个组件。语法为 v-for="(item, index) in items",其中 i…

react fragment 如何遍历

react fragment 如何遍历

React Fragment 遍历方法 在 React 中,Fragment 允许在不添加额外 DOM 节点的情况下组合子元素。以下是几种遍历 Fragment 的方法: 使用 React.Frag…

react 如何遍历虚拟dom

react 如何遍历虚拟dom

遍历虚拟DOM的方法 在React中,虚拟DOM(Virtual DOM)是一个轻量级的JavaScript对象,表示真实DOM的抽象。遍历虚拟DOM通常用于调试、性能优化或自定义渲染逻辑。以下是几种…

php 容器实现

php 容器实现

PHP 容器实现方法 依赖注入容器(DIC) PHP 容器通常指依赖注入容器,用于管理对象依赖关系。以下是一个简单实现: class Container { private $binding…

php实现容器

php实现容器

PHP 实现容器的方法 依赖注入容器基础 PHP 中实现容器通常基于依赖注入(DI)原则,容器用于管理对象的创建和依赖关系。以下是实现容器的核心方法: 注册服务 容器需要提供注册服务的方法,通常通…