byte a=1+1; //正确 定义byte型的变量a时,会自动将右边的数值自动完成了强转操作。
System.out.println(a);
//byte b = 1; b = b + 1; //编译失败,错误。这是数据类型转换,b是byte型,1默认是int型,运算结果是int型,赋值给byte型的b变量可能损失精度。
//System.out.println(b);
byte c = 1; c = c += 1; //正确。首先,c+=1中+=运算符在给c赋值时,自动完成了强转操作。最后将运算后的c赋值给c。
System.out.println(c);
byte d = 1; d = ++d; //正确。首先,先运算++d,该运算是先将d加一后的结果赋值给d,在赋值过程自动完成了强转操作。
System.out.println(d); |
|