[英]For Each Loop Editing Original 2D Array
在 for each 循环中,输出为 6。但是,我认为输出将为 0,因为至少对于一维数组,每个循环只遍历数组。 如果“f”只是循环中的局部变量,如何编辑“g”?
int[][] g = new int[7][7];
for(int[] f : g) {
for(int h = 0; h < f.length; h++)
f[h] = 6;
}
System.out.println(g[4][6]);
尽管 Java 是按值传递的,但如果您传递的值是对可变数据类型的引用,则它们可以被改变。
如您所知, f
是您在增强型 for 循环中迭代的值,但它表示二维数组g
包含的每个元素。
在这种情况下,您的int[]
是可变的。 您正在积极地将二维数组中的值完全编辑为另一个值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.