java中+=的真正意义包含两个部分,一是“+”,就是通常所说的直接相加,二是改变结果的类型:将计算结果的类型转换为“+=”,* 符号左边的对象的类型。
但自动类型转换可能会出现意外
例如
a=3,b=2;
a+=b;
System.out.println(a); //输出5
a=a+b;
System.out.println(a); //输出5
如果两位都是整数,则没有区别
如果有⼀个不是整数,就有区别,再看下⾯⼀个例⼦:
a=‘3‘’,b=2;
a+=b;
System.out.println(a); //不报错,因为“+=”会⾃动类型强制转换
a=a+b;
System.out.println(a); //报错,字符串类型不能与整数相加