问题:前置自增和后置自增的区别 Code-后置自增 public class Test { public static void main(String[] args) { int a = 2; int b = a++ + a * 3; System.out.println(b); } } Code-前置自增 public class Test2 { public static void main(String[] args) { int a = 2; int b = ++a + a * 3;…
问题 直到今天,我都一直以为: i += j 等同于 i = i + j; 但如果有: int i = 5; long j = 8; 这时 i = i + j不能编译.但i += j却能够编译.这说明两者还是有区别的 这是否意味着,i += j,实际是等同于 i= (type of i) (i + j)呢? 精华回答: 这个问题,事实上官方文档中已经解答了. 请看这里.§15.26.2 Compound Assignment Operators. 再照搬下官方文档的说明 对复合赋值表达式来说.…