自增++、自减-- 的使用
- 放在变量的前面,先对变量进行+1、-1操作,再拿变量的值进行运算。
- 放在变量的后面,先拿变量的值进行运算,再对变量的值进行+1、-1。
- 单独使用的情况下,放前后无区别。
- 非单独使用的情况则需要考虑放前 \ 后。
int i = 1; System.out.println(i++); //先执行输出,再对i进行自增操作-----打印 1 //此时i=2 System.out.println(++i); //先执行自增操作,再执行输出--------打印 3 //此时i=3 i++; //单独成行时++i 和 i++效果相同 System.out.println(i); //打印 4 ++i; //单独成行时++i 和 i++效果相同 System.out.println(i); //打印 5 int j = i++; //非单独使用,在表达式中,先赋值,再++ System.out.println(j); //打印 5 int k = ++i; //非单独使用,在表达式中,先++,再赋值 System.out.println(k); //打印 7
案例:
public static void main(String[] args) {
int i = 2;
int j = 5;
//i 2 3 4 3
//j 5 4 3 4
//k 2 + 4 - 4 + 4 - 4 + 4 + 7
/*
* (i++) i=2 -> k=2 -> i=i+1=3
* (++i) i=3 -> i=i+1=4 -> k=k+4=6
* (--j) j=5 -> j=j-1=4 -> k=k-4=2
* (j--) j=4 -> k=k+4=6 -> j=j-1=3
* (i--) i=4 -> k=k-4=2 -> i=i-1=3
* (++j) j=3 -> j=j+1=4 -> k=k+4=6
* ( +7) k=6 -> k=k+7=13
*/
int k = i++ + ++i - --j + j-- - i-- + ++j + 7 ;
System.out.println(i); //3
System.out.println(j); //4
System.out.println(k); //13
}