x ++和++ x之间的差异?

Dr *_*isk 3 java

可能重复:
java中的x ++和++ x之间有区别吗?

我正在阅读官方Java教程,我没有区分postfix和前缀(++ x vs x ++).有人能解释一下吗

Jon*_*eet 11

++x:增量x; 整个表达式的值是增量的值

x++:增量x; 整个表达式的值是增量之前的值

请考虑以下两个部分:

int x = 0;
System.out.println(x++); // Prints 0
// x is now 1

int y = 0;
System.out.println(++y); // Prints 1
// y is now 1
Run Code Online (Sandbox Code Playgroud)

我个人试图避免在较大的声明中使用它们作为表达式 - 我更喜欢独立的代码,如下所示:

int x = 0;
System.out.println(x); // Prints 0
x++;
// x is now 1


int y = 0;
y++;
System.out.println(y); // Prints 1
// y is now 1
Run Code Online (Sandbox Code Playgroud)

在这里,我相信每个人都能够找出所印刷的内容和最终的价值,x而且y不会过多地挠头.

肯定有时候在表达式中提供前/后增量是有用的,但首先要考虑可读性.


Gil*_*ili 5

++ x递增x,然后返回值x ++返回x的值,然后递增变量

例如:

int x = 0;
int A = ++x; // A = 1
int B = x++; // B = 1
int C = x;   // C = 2
Run Code Online (Sandbox Code Playgroud)