Java 为什么这些打印不同的输出?
我只想了解(inti=1;I这个循环的Java 为什么这些打印不同的输出?,java,for-loop,Java,For Loop,我只想了解(inti=1;I这个循环的之间的区别: for(int i=1;i++在循环标准中,i在循环迭代后递增。从: 在循环的每次迭代后都会调用增量表达式;该表达式可以增加或减少一个值 在第二个示例中,它在计算它的表达式中递增,但由于使用了后递增运算符,所以计算的值是旧值。这意味着在打印它时,它已经递增了。为了解释,我仅使用大括号重构语句 for(int i =1;i<4;i++) { System.out.print(i); } System.out.prin
之间的区别:
for(int i=1;i++在循环标准中,i
在循环迭代后递增。从:
在循环的每次迭代后都会调用增量表达式;该表达式可以增加或减少一个值
在第二个示例中,它在计算它的表达式中递增,但由于使用了后递增运算符,所以计算的值是旧值。这意味着在打印它时,它已经递增了。为了解释,我仅使用大括号重构语句
for(int i =1;i<4;i++) {
System.out.print(i);
}
System.out.println();
for (int i =1;i++<4;) {
System.out.print(i);
}
System.out.println();
用于(int i=1;i这意味着编译器将其检查为比4小123,但将其打印为234?@omar el基本上就是这样。@omareli++
在其递增之前计算为i
的值。因此,在循环的第一次中,它将计算1<4
。有关更多信息,请参阅but For t For ti++的第一个循环在print语句之前我很抱歉我有点confused@omarel该部分仅在循环体完成后执行,如链接中所述。我确实看到术语可能会混淆。ohhh非常感谢,因此for循环的第三部分总是在任务执行后应用??即正确-更多关于结构的解释:并参考上面Carlos Heuberger的链接。
循环的详细描述(aka规范)
循环:Java语言规范
for(int i =1;i<4;i++) {
System.out.print(i);
}
System.out.println();
for (int i =1;i++<4;) {
System.out.print(i);
}
System.out.println();