我觉得最精辟的一个解释是,i++里i这个执行对象先执行表达式再加1,++i里i这个执行对象先执行加1 再执行表达式
举个栗子
@Test
public void main() {
int a = 1;
int b = a ++;
System.out.println("a= " + a); //a= 2
System.out.println("b= " + b); //b= 1
int c = 1;
int d = ++ c;
System.out.println("c= " + c); //c =2
System.out.println("d= " + d); // d=2
}
通俗来讲
i++ a先执行 a= b =1 再执行+1操作
++1 c先执行+1操作 再执行 c= d = 2