原创转载请注明出处:http://agilestyle.iteye.com/blog/2359966
a=a+b和a+=b的区别
- 对于同样类型的a和b,实际上没有任何区别
- 对于不同类型的a和b,需要注意的是强制类型转换
package org.fool.test;
public class Demo {
public static void main(String[] args) {
short a = 1;
a += 1;
System.out.println(a);
short b = 1;
b = b + 1;
//b = (short) (b + 1);
System.out.println(b);
}
}
Console Output

Note:
+=运算中,结合了强制类型转换的功能,因此,不会出现编译错误;而对于a=a+b;这个式子,因为是简单的运算,没有类型转换,在编译过程中会报错
Summary
实际上这个问题鄙人认为真没啥用,就是一个脑筋急转弯,公司里面年纪大的用来欺负年级小的,纯粹用来装B,哪个2B青年想出来的题目,哎!
本文探讨了a+=b与a=a+b两种运算符在Java中的使用区别,特别是针对不同类型变量时的行为差异。文章通过示例展示了短类型变量在进行加法运算时的不同处理方式,解释了+=运算符如何隐含地进行类型转换。

被折叠的 条评论
为什么被折叠?



