Java中i++ 和i- -的区别
++(自增运算符)
i++ 和 ++i 在理论上的区别是
i++:是先把i拿出来使用,然后再+1
++i :是先把i+1,然后再拿出来使用
例1:
public class 1 {
public static void main(String[] args) {
int a = 1;
int b = a++; //此时先把a的值赋给b,接下来,在把a本身加1。 也就是a=b a=a+1
System.out.println(a);
System.out.println(b);
}
}
输出结果:
a=2
b=1
例2:
public class 2 {
public static void main(String[] args) {
int a = 1;
int b = ++a; //此时先把a本身加1,然后再赋值给b。 也就是a=a+1 a=b
System.out.println(a);
System.out.println(b);
}
}
输出结果:
a=2
b=2
- -(自减运算符)
与上文++道理是一样的,废话不多说给一个例子自己看哈。
public class 3 {
public static void main(String[] args) {
int a = 2;
int b = ++a; //a先加1 然后赋值给b 所以b=2+1=3
int c = a--; /*这时的a赋值给c c=3,然后a再自己减1 a=3-1=2
所以a的最终结果是2*/
System.out.println("-----------------------------");//这个不用管
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
}
输出结果:
a=2
b=3
c=3
最后一个可能有点难度,但只要前面理解了后面应该问题不大。