位移运算
Java位移运算主要有三种:
(1)左移:<<
vluse<<num;//num 指定要移位值value 移动的位数
规则:
1)丢弃最高位,低位补0;
2)如果移动位数超过了该类型的最大位数,那么编译器会对移动的位数取模操作;
3)在没有溢出的情况下,对于正数和负数都相当于乘2操作;
4)如果移近高级位(32/64),那么该值将变为负数;
(2)右移:>>
vluse<<num;//num 指定要移位值value 移动的位数
规则:
1)丢弃低位,高位补符号位;(负数补1,正数补0)
2)对于正数和负数都相当于除2操作;
(3)无符号右移:>>>
vluse<<<num;//num 指定要移位值value 移动的位数
规则:
1)丢弃低位,高位0;