对于使用2D阵列的每个循环

uml*_*uml 10 java arrays foreach

这是Java代码的片段:

int[][] uu = new int[1][1];
uu[0][0] = 5;
for(int[] u: uu){
    System.out.println(u[0]);
}
Run Code Online (Sandbox Code Playgroud)

它打印5.但为什么声明for循环的声明部分as int[] u,但不是as int[][] u

在uu你引用2D数组...这不是一个功课.我正在准备Java认证.干杯

Roh*_*ain 25

因为你uu是一个array of array.因此,当您迭代它时,您将首先得到一个array,然后您可以迭代该数组以获取单个元素.

所以,你的外部循环具有int[]类型,因此声明.如果你u在另一个内循环中迭代,你会得到类型int: -

for (int[] u: uu) {
    for (int elem: u) {
        // Your individual element
    }
}
Run Code Online (Sandbox Code Playgroud)