Java中foreach取值

在Java编程语言中,我们经常会使用foreach循环来遍历集合或数组。foreach循环也称为增强for循环,它提供了一种简洁的方式来遍历集合中的元素,而无需使用传统的for循环和索引。在这篇文章中,我们将介绍如何在Java中使用foreach循环来取值,并且提供一些示例代码来帮助理解。

foreach循环概述

foreach循环是一种语法糖,它可以迭代数组或集合中的元素,而不需要手动管理索引。foreach循环的语法结构如下:

for (元素类型 变量名 : 集合或数组) {
    // 循环体
}

其中,元素类型是集合或数组中元素的数据类型,变量名是用于存储当前元素的变量。在循环体中,可以通过变量名来访问当前元素的值。

使用foreach循环遍历数组

首先,让我们看一个使用foreach循环遍历数组的示例代码:

public class ForEachExample {

    public static void main(String[] args) {
        int[] numbers = {1, 2, 3, 4, 5};

        for (int number : numbers) {
            System.out.println(number);
        }
    }
}

在这个示例中,我们定义了一个整型数组numbers,然后使用foreach循环遍历数组中的元素,并将每个元素打印出来。运行以上代码,输出结果如下:

1
2
3
4
5

使用foreach循环遍历集合

除了数组,我们还可以使用foreach循环遍历集合类。下面是一个示例代码,展示了如何遍历ArrayList集合中的元素:

import java.util.ArrayList;
import java.util.List;

public class ForEachExample {

    public static void main(String[] args) {
        List<String> names = new ArrayList<>();
        names.add("Alice");
        names.add("Bob");
        names.add("Cathy");

        for (String name : names) {
            System.out.println(name);
        }
    }
}

在这个示例中,我们创建了一个ArrayList集合names,并向其中添加了几个字符串元素。然后使用foreach循环遍历集合中的元素,并将它们打印出来。运行以上代码,输出结果如下:

Alice
Bob
Cathy

foreach循环与迭代器的区别

在遍历集合时,除了使用foreach循环外,还可以使用迭代器(Iterator)来实现。下面是foreach循环和迭代器的区别:

  • foreach循环更加简洁和易读,不需要手动调用迭代器的方法。
  • 迭代器可以在迭代过程中对集合进行修改,而使用foreach循环则会抛出ConcurrentModificationException异常。

示例:计算数组元素之和

让我们通过一个实际的示例来演示如何使用foreach循环计算数组中所有元素的和:

public class SumArray {

    public static void main(String[] args) {
        int[] numbers = {1, 2, 3, 4, 5};
        int sum = 0;

        for (int number : numbers) {
            sum += number;
        }

        System.out.println("Sum: " + sum);
    }
}

在这个示例中,我们定义了一个整型数组numbers,然后使用foreach循环遍历数组中的元素,并计算它们的总和。最后将总和打印出来。运行以上代码,输出结果如下:

Sum: 15

饼状图示例

下面是一个简单的饼状图示例,展示了数组中各元素的比例:

pie
    title Array Elements
    "1" : 20
    "2" : 15
    "3" : 10
    "4" : 25
    "5" : 30

类图示例

下面是一个示例的类图,展示了ForEachExample类和SumArray类的关系: