我想确保我理解java中的()循环。来自java教程:
for (initialization; termination; increment) {
statement(s)
}
文档说:"每次迭代循环后都会调用增量表达式"
int x = 10;
for(int y=2;x!=1;x++){
System.out.print(x);
x=x-y;
//actual x++ operation?
}
//prints 10 9 8 7 6 5 4 3 2
x
和System.out
之后x=x-y
递增?
答案 0 :(得分:4)
此块
for (initialization; termination; increment) {
statement(s)
}
相当于
{
initialization;
for (; termination; ) {
statement(s)
increment;
}
}
注意第二个等效的额外范围括号。这强调在初始化步骤中声明的变量在最终}
之后超出范围。
因此,您的评论//actual x++ operation?
位于正确的位置:紧接在您的右大括号之前。
答案 1 :(得分:3)
是。运行完整操作后,X会递增。因此,即使你对x做了事情,它也应该增加..所以在每一步中你从x中减去一个因为你从减去两个开始,然后从增量中加一个。