注意:
1.有扩展赋值运算符时,当前变量是整数,哪怕后面操作小数,也会自动完成类型转换。(float类型也是如此)
2.取值范围大的数字不能赋给取值范围小的 比如 int x = 10
x = x + 0.5 (注意:0.5属于取值范围大的数字,所以不能赋给 int类型的x,出现报错)
1 赋值运算符 2 int c =3 * 2 % 6; 3 4 扩展赋值运算符 5 int x = 5; 6 x = x +1; //也可以编写为:x +=1 7 8 9 int a = 123,s = 2; 10 s = s* 10 + a % 10; //s = 3 11 上一条语句是否等价于如下代码? 12 s *= 10 + a % 10 ; //等价于 s = s * (10 + a % 10) 13 //(10 + a% 10)为整体 14 System.out.println(s); //结果为26 15 16 int x = 10; 17 x += 0.5; //运行不报错的原因是:有扩展赋值运算符时,当前变量是整数,哪怕后面操作小数,也会自动完成类型转换。 18 //所以运行结果是 x = 10;(注意:x 已经是int类型,所以结果依然是整数类型) 19 x = x +0.5 //出现编译错误, 0.5属于float类型,是取值范围大的数字,不能给取值范围小的 20 System.out.println("x = " +x); 21