增强for循环遍历arraylist
时间: 2023-08-25 16:15:26 浏览: 48
当使用增强for循环遍历ArrayList时,可以按照以下方式进行操作:
```java
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("元素1");
arrayList.add("元素2");
arrayList.add("元素3");
for (String element : arrayList) {
// 对每个元素执行操作
System.out.println(element);
}
```
在上述示例中,我们创建了一个ArrayList,并向其添加了三个元素。然后,使用增强for循环遍历ArrayList中的每个元素,并对每个元素执行操作。在这里,我们只是简单地将元素打印到控制台上。
请注意,我们需要指定ArrayList的泛型类型,以便在增强for循环中正确地使用元素。在上述示例中,我们使用了`String`类型的ArrayList作为示例。
相关问题
增强for循环遍历list
当使用增强for循环遍历List时,可以按照以下格式编写代码:
```java
List<Integer> myList = new ArrayList<>();
// 假设列表已经被填充了一些整数
for (Integer number : myList) {
System.out.println(number);
}
```
在上面的示例中,我们假设有一个Integer类型的列表`myList`。使用增强for循环,我们可以通过在每次迭代中将列表中的元素赋值给`number`变量来遍历列表,并在控制台打印出每个元素的值。注意,`number`变量的类型应与列表元素的类型匹配。
请注意,增强for循环只能用于遍历集合类(如List、Set等)或数组。如果要在循环体内修改列表的元素,可以考虑使用普通的for循环,并根据索引访问列表中的元素。
增强for循环遍历可以修改
可以修改,但是需要注意一些细节。
对于数组或者集合类型的数据,使用增强for循环遍历时,只能读取元素的值,不能修改元素的值。如果需要修改元素的值,可以使用普通的for循环。
例如,对于数组,可以使用以下普通for循环修改元素的值:
```
int[] arr = {1, 2, 3, 4};
for (int i = 0; i < arr.length; i++) {
arr[i] = arr[i] * 2;
}
```
而使用增强for循环修改元素的值会编译报错:
```
int[] arr = {1, 2, 3, 4};
for (int num : arr) {
num = num * 2; // 编译报错
}
```
但是对于某些特殊的集合类型,例如ArrayList,可以使用增强for循环修改元素的值。因为ArrayList的实现方式是基于数组,增强for循环遍历集合时,实际上是遍历了ArrayList内部的数组,因此可以修改元素的值。
例如,对于ArrayList,可以使用以下增强for循环修改元素的值:
```
List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3, 4));
for (int num : list) {
num = num * 2; // 可以修改元素的值
}
```
但是需要注意,这种方式修改元素的值并不会影响到ArrayList本身,因为修改的实际上是内部数组中的元素值,而不是ArrayList中的元素值。如果需要修改ArrayList中的元素值,还是需要使用普通的for循环。