x++和++x的作为表达式的区别

Posted you only can live once

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了x++和++x的作为表达式的区别相关的知识,希望对你有一定的参考价值。

面试中常见的一个问题x++跟++x的区别

一般回答都是x++是先运算然后自增,而++x则是x自增然后运算。单独使用时他们没有区别。

下面我们上代码

int x = 5;

int y = x++;

由于x++参与了运算,所以先将x的值赋给了y,然后再进行自增运算。

如果是下面的代码呢?

int x = 5;

System.out.println(x++);

打印结果是多少呢?

结果还是5;

不管x++是否参与了运算,我们使用x++的时候,都是先得到x的值,然后再自增。如果是++x则先将x自增1,然后再使用x+1后的值。

x++和++x 两者区别: 如果单独作为一条语句的话,并没有区别例如 x++;和++x;没有任何区别 如果作为一个表达式;前者表达式值为x,然后x自身+1;后者表达式值x自身+1以后的x值, 例:x=1; a=x++;这里a结果是1;x是2; x=1;a=++x; 这里a结果是2, x结果也是2
————————————————
版权声明:本文为CSDN博主「sdoog_owt」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sdoog_owt/article/details/80044871

以上是关于x++和++x的作为表达式的区别的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript中函数声明和函数表达式的区别

plot和ezplot有啥区别?

java 正则表达式 X?? 的示例,X?+ 和 X? [复制]

html中表达式和%%都是啥意思,有啥区别吗?

复合赋值和简单复制的区别

lvalue和rvalue的区别