i++ 和 ++i 有什么区别
1、先看运行结果
private void test1() {
int i = 3;
int a = i++;
System.out.println(i); //4
System.out.println(a); //3
}
private void test2() {
int i = 3;
int a = ++i;
System.out.println(i); //4
System.out.println(a); //4
}
2、区别:
i++:这是后缀递增运算符,先将当前值赋给变量,然后再递增。
++i:这是前缀递增运算符,先递增变量的值,然后再赋给变量。
3、效率:
就是它们被编译器和JVM优化后的字节码是相同的,所以效率一样高