“我们仍需共生命的慷慨与繁华相爱,即使岁月以刻薄和荒芜相欺”
写在开始:
增强for循环 (也称for each循环) 是迭代器遍历方法的一个“简化版”,是JDK1.5以后出来的一个高级for循环,专门用来遍历数组和集合。
其内部原理是一个Iteration迭代器,在遍历数组/集合的过程中,不能对集合中的元素进行增删操作。
以下是本篇文章正文内容,
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);
//普通遍历
}
增强 for 循环最常见的用途之一是遍历数组。它简化了传统 for 循环的语法,不需要维护索引变量。
示例:遍历整型数组
int[] numbers = {10, 20, 30, 40, 50};
for (int number : numbers) {
System.out.println(number);
}
输出:
10
20
30
40
50
增强 for 循环也可以用于遍历包含不同数据类型的数组,例如字符串数组。
示例:遍历字符串数组
String[] fruits = {"Apple", "Banana", "Cherry"};
for (String fruit : fruits) {
System.out.println(fruit);
}
输出:
Apple
Banana
Cherry
增强 for 循环可以轻松地遍历 Java 集合框架中的 List、Set 等集合对象。
示例:遍历 List 集合
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
for (String name : names) {
System.out.println(name);
}
输出:
Alice
Bob
Charlie
增强 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
增强 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.
增强 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
增强 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 循环或者使用迭代器。