自学java,看不懂这个java程序(array),解释一下。我知道得出的结果是随机的,但是我不明白其中的过程。

2025-01-21 15:31:43
推荐回答(2个)
回答1:

你循环中的i是在循环内声明的,那么它的有效作用范围就到循环结束的}为止,如果i是在循环之前就已经声明了的其作用范围就要大
比如
public static void main(String[] args)
{
int i;
for(i=0;i
{... }
}
这里的i就是在循环之前声明的,那么i的作用范围不只限于循环内,而是到main方法的}为止
如果是
for(int i=0;i{
...
}
这种情况下,i只能在循环中访问,循环结束后i就被销毁了

回答2:

第8 9行是对数组赋值. int [] numbers = new int[10]只是申明了一个数据对象.
你要学学各个变量的作用域.每个loop里面的i都只作用于当前循环. 你可以通过在循环外,看看能否调用i来证明这点.
第一个LOOP里的I和第四个里的i是两个不同的对象了.