Java FAQ
|
for文の( )内で宣言された識別子の有効範囲はどうなっていますか。 |
( )内の第1部分であるForInit部が局所変数宣言であれば、そこでで宣言された識別子の有効範囲は、このfor文の中に限定されます。したがって、for (ForInitopt; Expressionopt; ForUpdateopt) statement
と、それぞれのfor文内でiの宣言が必要ですし、for (int i = 0; i < 10; i++) a[i] = i; for (int i = 10; i < 100; i++) b = c * z[i];
では、zに代入される値は10となります。i = 10; for (int i = 0; i < 5; i++) a[i] = i; /* このiはfor文で宣言されたi */ z = i; /* このiは最初に宣言されたi */