- 单独为一行时: 放在变量前和变量后没有区别,都是+1或者-1的操作。
- 参与赋值或者判断时:
- 自增自减运算符放在变量前面时先自增自减,再参与赋值或者判断。
- 使用自增自减运算符的变量有同名变量时:
- 自增自减运算符在前:影响右侧同名变量值,也影响自己。
- 自增自减运算符在后:影响右侧同名变量值,不影响自己。
代码:
int a = 0;
// 0 + 3 == 1 + 2
System.out.println((a + 3 == ++a + ++a) + ":" + a);
// 2 + 6 == 2 + 2 + 4
System.out.println((a + 6 == a + a++ + ++a) + ":" + a);
// 4 == 6
System.out.println((a++ == ++a) + ":" + a);
// 7 == 7
System.out.println((++a == a++) + ":" + a);
结果: