概述
Day03_SHJavaTraining_4-5-2017
1.混合赋值运算符(+= -= *= /= %=)
面试题:
1 /** 2 ①byte b = 100; 3 ②b = b + 500; 4 ③b += 500; 5 ④System.out.println("b=" + b); 6 第一种执行方式①②④,第二种执行方式①③④,这两种执行方式会不会报错?如果报错,写出原因,否则写出结果。 7 */
分析:
第一种执行方式:
一定会报错。因为b是byte类型空间,只占一个字节,而同它运算的500,默认是int类型,占4个字节,由于数据范围小的数据类型和数据范围大的数据类型之间做运算,结果为数据范围大的数据类型,所以报错。
第二种执行方式:
不会报错。因为混合赋值运算符做算数运算时, 如果得到的运算结果超出了其左边变量的数据类型的取值范围,计算机底层会自动将结果强制转换成混合赋值运算符左边变量的数据类型。结果为88。
转载于:https://www.cnblogs.com/EzraOholiabXue/p/Day03_SHJavaTraining_4-5-2017_01.html
最后
以上就是追寻仙人掌为你收集整理的混合赋值运算符做算数运算时不改变自身数据类型的全部内容,希望文章能够帮你解决混合赋值运算符做算数运算时不改变自身数据类型所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复