java中的i++与++i有什么区别?

时间:2021-10-05 14:00:01

刚开始接触时,做了一些小测试,还以为这两个没有什么区别。

public class OperatorDemo {
public static void main(String[] args){
int a = 10;
a++; System.out.println(a);
}
} package com.javapr; public class OperatorDemo {
public static void main(String[] args){
int a = 10;
++a;
System.out.println(a);
}
} # 两者的输出都是11

后来慢慢发现是有区别的。

看例子:

public class OperatorDemo {
public static void main(String[] args){
int a = 10;
int b = a++;
System.out.println(a);
System.out.println(b);
}
} # 输出结果:11 10
public class OperatorDemo {
public static void main(String[] args){
int a = 10;
int b = ++a;
System.out.println(a);
System.out.println(b);
}
} # 输出结果:11 11

结论:单独使用的时候,++或者--放在变量的前面或者后面,结果一样。

参与其他操作的时候:

++在后面,先拿变量做操作,然后变量再++

++在前面,先变量++,然后再拿变量做操作