为什么以下输出5
而不是25
?
public class test{
public test()
{
int i =0;
int j =0;
int u = 0;
for (; i<=4; i++)
{
for (; j<=4; j++)
{
u++;
}
}
System.out.println(u);
}
public static void main(String[] args)
{
test t = new test();
}
}
答案 0 :(得分:4)
因为j永远不会重置为0。
第一个内循环迭代运行j从0到4(总共增加5倍使其成为5)然后再也不会再运行,因为j保持在4 - 所以其余的外循环迭代(i = 1到i) = 4)什么都不做。
答案 1 :(得分:1)
因为第一次在j变为4之后,for循环再也不会执行...
如果你想获得25,在内循环初始化之前设置j = 0或在内循环初始化中将j初始化为0。