当前位置: 代码迷 >> J2SE >> java的++运算符,该如何解决
  详细解决方案

java的++运算符,该如何解决

热度:360   发布时间:2016-04-23 20:14:18.0
java的++运算符
byte b=1;
b=b++; // 或者是b=++b;
b+=1; //正确的写法
b=b+1; //错误的写法

其中有没有过程发生了隐式转换?
还有有注释的两句是不是说明+=适用于int类型
而不适用于byte类型?
------解决思路----------------------
是有隐式转换

b=b+1;    //错误的写法 因为你b是byte 而1 默认是int类型 所以会出错

b=(byte)(b+1);
------解决思路----------------------
+=等符号含有隐式转换,而java中四则运算符号的最小操作数类型为int,也就是说所有参与运算的操作数只要低于int在计算后都会变为int。