首先:
int i=2;
i++=2;
++i=3;
前者先显示当前的值,而后者则是先自增在显示值;
second
i=i+1和i+=1;
输出结果虽然一样,但是
1.byte i=2;
i+=2;
2.byte i=2;
i=i+2;
第一种编译可以通过,第二种却不能通过,因为当使用第一种复合赋值的时候,系统会将右边的int类型的值自动转成左边的byte,
而第二种则不会。
特别注意的是:byte i=120;
i+=20;输出的值不是140;而是-116;
这是因为结果超出了byte类型表示的范围,所以在使用时还要注意会出现意想不到的结果;