考点:4
位运算符和表达式
1.位运算符
位运算表达式由操作数和位运算符组成,实现对整数类型的二进制数进行位运算。位运算符可以分为逻辑运算符(包括~、&、|和^)及移位运算符(包括>>、<<和>>>)。表3-4给出了Java位运算符。
表3-4 Java位运算符
在进行位运算时,需要注意以下几点。
(1)>>>和>>的区别是:在执行运算时,>>>运算符的操作数高位补0,而>>运算符的操作数高位移入原来高位的值。
(2)右移一位相当于除以2,左移一位(在不溢出的情况下)相当于乘以2;移位运算速度高于乘除运算。
(3)若进行位逻辑运算的两个操作数的数据长度不相同,则返回值应该是数据长度较长的数据类型。
(4)按位异或可以不使用临时变量完成两个值的交换,也可以使某个整型数的特定位的值翻转。
(5)按位与运算可以用来屏蔽特定的位,也可以用来取某个数型数中某些特定的位。
(6)按位或运算可以用来对某个整型数的特定位的值置l。
2.补码的概念
在Java语言中,二进制数使用补码表示,最高位为符号位,正数的符号位为0,负数为1。补码的表示需要满足如下要求。
(l)正数的最高位为0,其余各位代表数值本身(二进制数)。
(2)对于负数,通过对该数绝对值的补码按位取反,再对整个数加1。
3.位运算符的优先级
~的优先级最高,其次是<<、>>和>>>,再次是&,然后是^,优先级最低的是|。
3.5赋值运算符和表达式
考点:5
赋值运算符和表达式
赋值运算符由变量和表达式组成,一般格式是:
<变量><赋值运算符><表达式>
赋值运算符包括赋值运算符(=0)和扩展赋值运算符。表3-5给出了Java赋值运算符。
表3-5 Java赋值运算符
注意:如果在赋值运算符两侧的类型不一致时,若右侧变量类型的级别高,则需要进行强制类型转换。
3.6条件运算符和表达式
考点6:
条件运算符和表达式
条件表达式由3个操作数和“?”、“:”组成,一般形式是:
opl?opt:op3
其中op1是关系或者布尔逻辑表达式,该值若为真,则计算op2表达式的值,并作为整个表达式的结果;若为假,则计算op3表达式的值,并作为整个表达式的结果。
3.7运算符优先级
文章来源于领测软件测试网 https://www.ltesting.net/