3.4.1 赋值运算符
赋值运算符以符号“=”表示,它是一个二元运算符(对两个操作数作处理),其功能是将右方操作数所含的值赋给左方的操作数。
3.4.2 算术运算符
3.4.3 自增和自减运算符
自增、自减运算符是单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整型或浮点型变量。自增、自减运算符的作用是使变量的值增1或减1.放在操作元前面的自增、自减运算符,会将、先将变量的值加1(减1),然后在使该变量参与表达式运算。放在操作元后面的自增、自减运算符,会先使变量参与表达式的运算,然后再将该变量加1(减1)。
.4.6 位运算符
位运算符除“按位与”和“按位或”运算符外,其他只能用于处理整数的操作数,包括 byte、short、 char、int和long 等数据类型。位运算是完全针对位方面的操作。整型数据在内存中以二进制的形式表示,如int型变量7的二进制表示是 00000000 00000000 00000000 00000111
左边最高位是符号位,最高位是0表示正数,若为1则表示负数。负数采用补码表示,如-8 的二进制表示为111111111 111111111 1111111 11111000。这样就可以对整型数据进行按位运算。
1.“按位与”运算
“按位与”运算的运算符为“&”,为双目运算符。“按位与”运算的运算法则是:如果两个整型数据 a、b 对应位都是 1,则结果位才是1,否则为 0。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同,如图 3.5 所示。
2.“按位或”运算
“按位或”运算的运算符为“”,为双目运算符。“按位或”运算的运算规则是:如果两个操作数对应未都是0,则结果位才是0,否则为1.如果两个操作数的精度不同,则结果的精度与精度高的操作相同。
3.“按位取反”运算
“按位取反”运算也称“按位非”运算,运算符为“~”,为单目运算符。“按位取反”就是将操作
数二进制中的1修改为 0,0 修改为 1,如图 3.7 所示。
4.“按位异或”运算
安位异或”运算的运算符是“^”,为双目运算符。“按位异或”运算的运算法则是:当两个操作的二进制表示相同(同时为0或同时为1)时,结果为0,否则为1。若两个操作数的精度不同,则
结果的精度与精度高的操作数相同
5. 移位操作
了上述运算符,还可以对数据按二进制位进行移位操作。Java 中的移位运算符有以下3种
<<:左移。
>>:右移。
>>>:无符号右移。
左移就是将运算符左边的操作数的二进制数据,按照运算符右边操作数指定的位数向左移动,右边移空的部分补 0。右移则复杂一些。当使用“>>”符号时,如果最高位是 0,右移空的位就填入0