原视频地址:
https://www.bilibili.com/video/av35040927
- 题目:
public static void main(String args[]){
int i = 1;
i = i++;
int j = i++;
int k = i + ++i * i++;
System.out.println("i=" + i);
System.out.println("j=" + j);
System.out.println("k=" + k);
}
- 结果:
i=4
j=1
k=11
- 解析
i = i++; 执行到这里的时候 i=1; i自增之后被覆盖还是等于1
int j = i++; 执行到这里时 j=1;i=2; i自增之后没有被覆盖所有是2
int k = i + ++i * i++; 执行到这里时 k = 2+3*3; i=4
++在前先自增,在后先赋值后自增
emmm说的自己都不信…想知道的朋友自己看原视频吧…