为什么这两个循环有不同的结果?我认为他们都会将每个数组中的所有值都初始化为 5,但只有第二个有效。有人可以解释这是为什么吗?
static main(args)
{
double[][] x = new double[3][3]
double[][] y = new double[3][3]
for(row in x)
{
for(num in row)
{
num=5
}
}
for(int i=0;i<y.size();i++)
{
for(int j=0;j<y[i].size();j++)
{
y[i][j]=5
}
}
println "x: ${x}"
println "y: ${y}"
}
这是输出
x: [[0.0, 0.0, 0.0], [0.0, 0.0, 0.0], [0.0, 0.0, 0.0]]
y: [[5.0, 5.0, 5.0], [5.0, 5.0, 5.0], [5.0, 5.0, 5.0]]