2

下面是一个示例程序,来自一些关于如何在 Java中使用for循环的注释。我不明白这条线是如何element:arrayname工作的。有人可以简要解释一下,或者提供一个链接到一个页面吗?

public class foreachloop {
    public static void main (String [] args) {
        int [] smallprimes= new int [3]; 
        smallprimes[0]=2;
        smallprimes[1]=3;
        smallprimes[2]=5;

        // for each loop
        for (int element:smallprimes) {
            System.out.println("smallprimes="+element);   
        }
    }
}
4

5 回答 5

1

这是另一种说法:for each element in the array smallprimes.

相当于

for (int i=0; i< smallprimes.length; i++)
{
     int element=smallprimes[i];
     System.out.println("smallprimes="+element);   
}
于 2012-10-01T19:12:43.977 回答
0

这就是所谓的增强 for 语句。它迭代,smallprimes然后将每个元素分配给变量element

有关详细信息,请参阅Java 教程

于 2012-10-01T19:12:10.053 回答
0
for(declaration : expression)

for 语句的两个部分是:

声明新声明的块变量,其类型与您正在访问的数组元素兼容。此变量将在 for 块中可用,其值将与当前数组元素相同。 表达式这必须计算为您要循环遍历的数组。这可以是数组变量或返回数组的方法调用。数组可以是任何类型:基元、对象,甚至是数组数组。

于 2012-10-01T19:14:30.777 回答
0

那不是构造函数。for (int i : smallPrimes)声明一个int i变量,范围在for循环中。

i变量在每次迭代开始时使用数组中的值进行更新。

于 2012-10-01T19:14:40.773 回答
0

由于您的代码片段中没有构造函数,因此您似乎对术语感到困惑。

There is public static method main() here. This method is an entry point to any java program. It is called by JVM on startup.

The first line creates 3 elements int array smallprimes. This actually allocates memory for 3 sequential int values. Then you put values to those array elements. Then you iterate over the array using for operator (not function!) and print the array elements.

于 2012-10-01T19:15:44.063 回答