39.递增递减运算符

阅读更多

在编写Java程序的时候,经常需要对一个变量加一或者减一,这个时候通常使用递增或递减运算符来完成。

 

递增和递减操作符有两种形式:前缀和后缀。前缀就是将运算符放在操作数前面,而后缀将运算符放在操作数后面。

 

int k =20;
k++;
此时,k的值为21。


前缀方式和后缀方式的作用都是对操作数加上或减去1,区别在于用在表达式中的时候。如:
int m = 10;
int n = 10;
int p = 2*++m;
int q = 2*n++;


此时,p的值是22,而q的值是20。m和n的值都是11。

 

这是因为,在进行p = 2*++m运算时,程序会先将m加上1然后再进行乘法运算。

 

而对于q=2*n++的后缀递增运算,则会首先取出n的数值进行乘法运算然后再将n递增1。所以,此时p的值是22(p=2*(10+1))而q的值是20(q=2*10),m和n的值却都为11。

注意,递增/递减操作符只能用于变量而不能用在数字本身,如,下面的用法是错误的:
 10--;
 5++;

因为本质上递增运算符是对变量做增一或者减一处理。比如 x++ 可以等价为 x=x+1;但是5++等价为5=5+1;很显然,这是错误的。

你可能感兴趣的:(39.递增递减运算符)