int i=10;
while(i<=10) {
System.out.println(i++);
}
为什么这段代码输出10一次,它背后的理论是什么?
变量i
在执行System.out.println(i++)
时已经等于10,因此输出将是10。之后,i
因为i++
变成了11,但是它不会被打印,因为当i
为11时,while
语句将为假。
如果我们将System.out.println(++i)
中的i++
改为++i
,我们将得到不同的结果。变量i
将首先增加到11,然后println
语句将发生;因此输出将是11。
逻辑很简单。i++是后增量的,它在应用它的变量的值上加1。例如:
int a = 10; System.out.println(a++); // it will print 10 System.out.println(a); // it will print 11