赋值运算符
1、赋值运算符包括“基本赋值运算符”和“扩展赋值运算符”:基本的、扩展的。
2、基本赋值运算符?
=
3、扩展运算符?
+=<br /> -=<br /> *=<br /> /=<br /> %=<br /> 注意:扩展运算符在编写的时候,两个符号之间不能有空格。<br /> + = 错误的。<br /> += 正确的。
4、很重要的语法机制:
使用扩展赋值运算符的时候,永远都不会改变运算结果类型。<br /> byte x = 100;<br /> x += 1;<br /> x自诞生以来是byte类型,那么x变量的类型永远都是byte。不会变。<br /> 不管后面是多大的数字。
public class OperatorTest04{ public static void main(String[] asge){ // 赋值运算符“=”右边优先级比较高,先执行右边的表达式 // 然后将表达式执行结束的结果放到左边的“盒子”当中。(赋值) int i = 10; // 重新赋值 i = 20; byte b = 10; b = 20; /* 以 += 运算符作为代表,学习扩展赋值运算符。 其它的运算,例如: -= *= /= %= 和 += 原理相似。 */ int k = 10; k += 20; // k变量追加20 System.out.println(k); // 30 int m = 10; // += 运算符类似下面的表达式 m = m + 20; System.out.println(m); // 30 // 研究: // i += 10 和 i = i + 10 真的是完全一样吗? // 答案:不一样,只能说相似,其实本质上并不是完全相同。 // 使用扩展赋值运算符可以吗? // 可以的,所以得出结论: x += 1 和 x = x + 1不一样。 // 其实 x += 1 等同于:x = (byte)(x + 1); x += 1 }}