public class Test2 {
public static void main(String[] args) {
int n = 0;
for(int i = 0; i<3; i++){
n = n++;
System.out.println(n);
}
System.out.println(n);
}
}
输出结果为:
0
0
0
0
原因:
n++其实是一个表达式,是有返回值的,步骤是先存储原值,然后加1,最后返回原值,所以被赋值的是0,真正赋值的动作其实是在自增之后进行的。在C++中,n=n++和n++其实是等效的,在java中不同。