请问在Java中X++与++X的区别是什么啊?

来源:百度知道 编辑:UC知道 时间:2024/06/16 01:58:56
请问下各位Java高手,X++与++X的区别是什么呢?++X是怎么运算的?X为任意一个整数,谢谢!
int x = 10;
int a = x++ +x;
System.out.println("a=" + a);
System.out.println("x=" + x);
int b = x + ++x;
System.out.println("b=" + b);
System.out.println("x=" + x);
中的int b = x + ++x;
System.out.println("b=" + b);
是怎样计算的?

++在前则先计算,++在后则先取值,比如:
int a=5,b=5,c=0,d=0;
c += a++; d += ++b;
结果是a=6,b=6,c=5,d=6

--补充:
int x = 10;
int a = x++ +x; //等同于 (x++) + x , (x++)是先取x赋值前的值即10,然后再自增,这是后半的x的值变成11了,a的结果就是21
int b = x + ++x;//经过上面的运算后x=11, 即 b = 11 + (++x), ++在前则会先自增所以x先自增为12,然后再加11得到b,即b=23

1楼正解

比如X=0;
X++<5是先判断0是否<5然后再把X+1变成1,如果是++X<5那就是先把X变成1,再判断1是否<5

X++先取X的值再计算+1;++X是先计算再取值

int x = 0;
int y = x++; //y的值为0
int z = x; //z的值为1

int xx = 0;
int yy = ++xx; //yy的值为1
int zz = xx; //zz的值为1