JAVA中s = s + 1 与s +=1的区别

s = s+ 1 与s +=1是不等价的,s += 1是等价于 s = (s的数据类型)(s + 1),而不是等价于 s = s + 1,当中存在隐含了一个强制类型转换的过程。

比如

public class Test { public static void main(String[] args) { byte b = 127; //b = b + 1; //在Eclipse上提示有错 //b = (byte) (b + 1); //在Eclipse上没有提示 b += 1; //在Eclipse上没有提示错误,与b = (byte) (b + 1)等价 System.out.println(b); } }





你可能感兴趣的:(Java基础)