欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 幼教 > 增强for循环 (for each循环)详解

增强for循环 (for each循环)详解

2024/10/25 17:28:09 来源:https://blog.csdn.net/2301_79175212/article/details/142219229  浏览:    关键词:增强for循环 (for each循环)详解

“我们仍需共生命的慷慨与繁华相爱,即使岁月以刻薄和荒芜相欺”

文章目录

  • 前言
    • 文章有误敬请斧正 不胜感恩!
  • 增强for循环
      • 1. 遍历数组
      • 2. 遍历字符串数组
      • 3. 遍历集合(如 List)
      • 4. 遍历 Set 集合
      • 5. 遍历 Map 的键值对
      • 6. 遍历二维数组
      • 7. 遍历对象数组
  • 总结


前言

写在开始:

增强for循环 (也称for each循环) 是迭代器遍历方法的一个“简化版”,是JDK1.5以后出来的一个高级for循环,专门用来遍历数组集合

其内部原理是一个Iteration迭代器,在遍历数组/集合的过程中,不能对集合中的元素进行增删操作。


文章有误敬请斧正 不胜感恩!

以下是本篇文章正文内容,


增强for循环

for(ElementType element: arrayName) 
{ //集合或数组的数据类型 变量名:集合名/数组名System.out.println(变量名)};

省去了变量的创建和范围的维护,遍历起来更加快捷.

for(数据类型 变量名:要遍历的数组){输出语句(变量名);
}

ElementType :是int,String也可以是你的自定义的元素的类型例如Person等等

element是你所要进行操作的数据的名称.就相当于你在普通遍历时 所设的 i 一样

for(int i=0;i<nums.length;i++){System.out.println(i);
//普通遍历
}

1. 遍历数组

增强 for 循环最常见的用途之一是遍历数组。它简化了传统 for 循环的语法,不需要维护索引变量。

示例:遍历整型数组

int[] numbers = {10, 20, 30, 40, 50};
for (int number : numbers) {System.out.println(number);
}

输出:

10
20
30
40
50

2. 遍历字符串数组

增强 for 循环也可以用于遍历包含不同数据类型的数组,例如字符串数组。

示例:遍历字符串数组

String[] fruits = {"Apple", "Banana", "Cherry"};
for (String fruit : fruits) {System.out.println(fruit);
}

输出:

Apple
Banana
Cherry

3. 遍历集合(如 List)

增强 for 循环可以轻松地遍历 Java 集合框架中的 List、Set 等集合对象。

示例:遍历 List 集合

List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
for (String name : names) {System.out.println(name);
}

输出:

Alice
Bob
Charlie

4. 遍历 Set 集合

增强 for 循环同样适用于 Set 集合,遍历顺序并不固定,因为 Set 本身是无序的。

示例:遍历 Set 集合

Set<Integer> uniqueNumbers = new HashSet<>(Arrays.asList(1, 2, 3, 4, 5));
for (int number : uniqueNumbers) {System.out.println(number);
}

输出(顺序可能不固定):

1
2
3
4
5

5. 遍历 Map 的键值对

增强 for 循环无法直接用于 Map,但可以通过获取 Map 的 entrySet() 迭代键值对。

示例:遍历 Map 的键值对

Map<String, Integer> ageMap = new HashMap<>();
ageMap.put("Alice", 25);
ageMap.put("Bob", 30);
ageMap.put("Charlie", 35);for (Map.Entry<String, Integer> entry : ageMap.entrySet()) {System.out.println(entry.getKey() + " is " + entry.getValue() + " years old.");
}

输出:

Alice is 25 years old.
Bob is 30 years old.
Charlie is 35 years old.

6. 遍历二维数组

增强 for 循环可以嵌套使用,方便遍历多维数组。

示例:遍历二维数组

int[][] matrix = {{1, 2, 3},{4, 5, 6},{7, 8, 9}
};for (int[] row : matrix) {for (int element : row) {System.out.print(element + " ");}System.out.println();
}

***//二维数组本质上还是一个数组,只不过它的每个元素都是一个一维的数组.
//因此,在对二维数组进行遍历时,要遍历两次.

输出:

1 2 3 
4 5 6 
7 8 9 

7. 遍历对象数组

增强 for 循环也可以用于遍历对象数组,例如自定义对象数组。

示例:遍历自定义对象数组

class Person {String name;int age;Person(String name, int age) {this.name = name;this.age = age;}
}Person[] people = {new Person("Alice", 25),new Person("Bob", 30),new Person("Charlie", 35)
};for (Person person : people) {System.out.println(person.name + " is " + person.age + " years old.");
}

输出:

Alice is 25 years old.
Bob is 30 years old.
Charlie is 35 years old.

总结

​ 增强 for 循环是一种简洁的语法糖,用于遍历数组和集合时特别方便。但需要注意,它不适合修改集合元素或在遍历过程中删除元素。如需更复杂的操作(例如需要索引、删除元素等),可以选择传统的 for 循环或者使用迭代器。


版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com