您的位置:首页 > 编程语言 > Java开发

关于JAVA 位运算“<<” ">>"

2017-04-07 16:53 363 查看
>>>表示右移一位,相当于原来的数除以2;

     无符号右移运算符>>>  它的通用格式如下所示:  value >>> num   num 指定要移位值value 移动的位数      。      无符号右移的规则只记住一点:忽略了符号位扩展,0补最高位  无符号右移运算符>>> 只是对32      位和64位     的值有意义

>>也表示右移,但是这个可以自由定义它的移动位数,比如>>3,则表示右移3位,也就相当于原来的数除以2的3次方;

  16>>3等价于16/(2的3次方)

public class Test {

public static void main(String[] args) {
int number = 10;
//原始数二进制
printInfo(number);
number = number << 1;
//左移一位
printInfo(number);
number = number >> 1;
//右移一位
printInfo(number);
}

/**
* 输出一个int的二进制数
* @param num
*/
private static void printInfo(int num){
System.out.println(Integer.toBinaryString(num));
}

<<则与>>相对应,表示左移,也可以自由指定位数,例如 <<2,表示左移2位,也就相当于原来的数乘以2的2次方

  64<<4 等价于64*(2的4次方)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: