初次看到,肯定会疑问,难道另有玄机?!
下面开始谜底揭晓:
如果两个变量数据类型一样时,
没有区别 a=a+b, a+=b
如果两个数据类型不一样呢?

我们发现 ,"类型不匹配,int 不能转换成byte",
当然,我们也可强转,将已经转换成int类型的a+4强制转换为byte类型,这样也是可以的。但是这种转换可能会导致溢出或者精度的下降,如果容忍可能出现的误差,可以使用这种转换。

强转代码并没有保错.

a+=b ;隐含了一个强制类型转换
初次看到,肯定会疑问,难道另有玄机?!
下面开始谜底揭晓:
如果两个变量数据类型一样时,
没有区别 a=a+b, a+=b
如果两个数据类型不一样呢?

我们发现 ,"类型不匹配,int 不能转换成byte",
当然,我们也可强转,将已经转换成int类型的a+4强制转换为byte类型,这样也是可以的。但是这种转换可能会导致溢出或者精度的下降,如果容忍可能出现的误差,可以使用这种转换。

强转代码并没有保错.

a+=b ;隐含了一个强制类型转换
Java中a+=b和a=a+b的区别
说明+=不会改变本身变量的数据类型与++,–运算符一样
提问:在Java语言中a+=b和a=a+b的区别?答:存在区别,主要区别为数据类型转换导致的运算时精度问题在
如果你说 a+=b 是 a=a+b 的简单写法,那你只说对了一半,
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M