首先,移位运算符有三种,其操作类型只支持:byte / short / char / int和long五种。(注意这些类型取值范围)
<< 左移运算符,表示将左边的操作数的二进制数据向左移动*位,移动后空缺位以0填充,多余位舍弃。(等同于乘2的n次方)
>> 右移运算符,二进制数据向右移动*位,高位补0(等同于除2的n次方)>>> 无符号右移运算符,不管移动前最高位是0还是1,右移后左侧产生的空位部分都以0来填充。
所以平时的一般乘除能用移位代替的就用移位,这样能提高点性能。
首先,移位运算符有三种,其操作类型只支持:byte / short / char / int和long五种。(注意这些类型取值范围)
<< 左移运算符,表示将左边的操作数的二进制数据向左移动*位,移动后空缺位以0填充,多余位舍弃。(等同于乘2的n次方)
>> 右移运算符,二进制数据向右移动*位,高位补0(等同于除2的n次方)>>> 无符号右移运算符,不管移动前最高位是0还是1,右移后左侧产生的空位部分都以0来填充。
所以平时的一般乘除能用移位代替的就用移位,这样能提高点性能。