【发布时间】:2015-02-20 20:04:08
【问题描述】:
我正在尝试查看多维数组是否为矩形。我是编程新手,无法完全弄清楚“break”的原因;不会把我踢出循环,它会继续运行。即使数组不是矩形的,我仍然返回 true。
public static void main(String[] args) {
int a2d[][] = {{1, 2, 3, 4, 5}, {2, 3, 4}, {1, 2, 3, 4, 5}};
int test = a2d[0].length;
for (int i = 0; i < a2d.length; i++) {
for (int j = 0; j < a2d[i].length; j++) {
if (a2d[i].length == test) {
System.out.println("True");
} else {
System.out.println("False");
break;
}
}
}
}
【问题讨论】:
-
你有嵌套循环。
break只终止最近的循环。 -
除非您使用标签(如
outer: for (...))。虽然这不适合新手。