这是代码 -
int i = 0;
System.out.printf( "\n%d\n\n", i ); // show variable i before loop
for( i = 0; i < 8; i++ )
{
System.out.printf( "%d\t", i );
}
System.out.printf( "\n\n%d\n", i ); // show variable i after loop
这是输出 -
0
0 1 2 3 4 5 6 7
8
当我想在 for 循环退出后使用变量 i 时,我的问题就出现了。我会假设我正在阅读 7,这是基于零的计数中的第 8 个增量,但它实际上读为 8!在循环退出时,变量 i 又增加了一个。
为了解决这个问题,我必须在循环结束时以及在任何进一步的代码中使用它之前执行类似 i-- 的操作。在我看来,这使代码更难理解。
有更好的解决方案吗?