- 为什么叫单目?
运算所需变量为一个运算符叫单目运算符(single eye operation),又叫一元运算符,单目运算符的意思是运算符作用于单个表达式。
- 增值操作符(++)与减值操作符
自增运算符和自减运算符都有两种形式,即前缀自增自减和后缀自增自减,前缀运算和后缀运算的运算规则是不一样的,但均会产生“+1”的作用,但“+1”只是该类操作符附作用。
如上图,声明两个变量并分别赋值,执行后置自增运算符运算时输出结果即为原值+1
类似的,前置自增运算符也产生了这个效果
前面所做的操作仅仅涉及一个变量,如果两个变量都参与,即:有自增自减操作也有赋值操作。
上图可以看到我们不再做简单的自增自减而是增加了赋值运算,当执行了b=a++的运算时,输出b值为10,输出a值为11,也就是说原来的a值赋给了b,然后a再做+1操作,可以看到后置自增(自减)运算符是先做赋值操作,再做+1操作。
但如果将运算操作改为b=++a输出结果就完全不同,当执行了b=++a的运算时,输出a、b的值均为11,也就是说a做了+1的操作再将+1后的a值赋给了b,可以看到后置自增(自减)运算符是先做+1操作,后做赋值操作。
- 总结
前缀操作符在进行复制之前增加变量的值,后缀操作符在进行复制之后才增加变量的值。这些操作符的结果不是被它们修改的变量,而是变量值的拷贝。
y = x++;拆分为 先y = x ; 再x++;
y = ++x;拆分为 先x++ ;再y = x;