强制类型转换的疑问,该如何处理
强制类型转换的疑问
我有个疑问,为什么2和3编译通不过,1和4过了,谁能帮忙解释下,由于这个问题不是太好描述,就没有直接百度搜索了。如果是C语言这样的做法是没问题的。
------解决方案--------------------
因为两个byte相加可能溢出,所以需要强制转换。
byte a = 3;
a =(byte)(a + 2); //pass
a = a + (byte)2; //unpass
a = (byte)2 + a; //unpass
a = (byte)2; //pass
我有个疑问,为什么2和3编译通不过,1和4过了,谁能帮忙解释下,由于这个问题不是太好描述,就没有直接百度搜索了。如果是C语言这样的做法是没问题的。
------解决方案--------------------
因为两个byte相加可能溢出,所以需要强制转换。