最近,我遇到了这段Java代码:
int a=0; for(int i=0;i<100;i++) { a=a++; } System.out.println(a);
为“ a”打印的值为0。但是在C的情况下,“ a”的值为100。
我不明白为什么在Java情况下该值为0。
a = a++;
从递增开始a,然后返回a到旧值,a++返回未递增的值。
a
a++
简而言之,它在Java中什么也不做。如果要增加,请仅使用postfix运算符,如下所示:
a++;