1.问题描述:一直死循环,反复打印,直到出错
2.相关代码
int[] Aarray = new int[]{2,4,5,6,2};
int[] Barray = new int[]{3,6,2,4,6};
for (int i = 0 ;i < 10 ;i ++ )
{
if (i < 5)
{
System.out.print(Aarray[i] + "\t");
}
else
{
i -= 5;
System.out.print(Barray[i] + "\t");
}
}
女神的闺蜜爱上我2017-06-12 09:23:20
当i = 1, 2, 3, 4 不说了,打印1 2 3 4
当i = 5时进入else语句块
i -= 5 即为 i = i-5 结果是i = 0吧,然后i++
然后i又从1 开始循环。for循环的终止条件 i < 10永远不能终止
高洛峰2017-06-12 09:23:20
简单,你把程序自己脑子里走一遍就清楚了啊,一开始i=0,小于5,输出,然后i++到1,继续小于5,在输出,一直这样直到i=5,然后i<5不成立,就走else那个分支,i-=5;i又小于0了,然后又开始进入下一次循环像开头那样,所以出现无限死循环