移位操作符

class Test{
	 public static void main(String[] args) { 
		final int MAX_VALUE = 2147483647;
		final int MIN_VALUE = -2147483648;
		int i = MAX_VALUE;
		int j = MIN_VALUE;
		 
		 System.out.println("i="+ i);
		 System.out.println("j="+ j);
		 System.out.println( "--左移位<<操作符:低位补0;");
		 System.out.println( Integer.toBinaryString(i) + " = i的二进制");
		 System.out.println( Integer.toBinaryString(i<<5) + " =i<<5  ");
		 System.out.println( "--有符号右移>>操作符:若符号为正,则在高位补0;若符号为负,则在高位补1;");
		 System.out.println( Integer.toBinaryString(i) + " = i的二进制");
		 System.out.println( Integer.toBinaryString(i>>5) + "=i>>5  ");
		 
		 System.out.println( Integer.toBinaryString(j) + " = j的二进制");
		 System.out.println( Integer.toBinaryString(j>>5) + "=j>>5  ");
		 System.out.println( "--无符号右移>>>操作符:高位补0;");
		 System.out.println( Integer.toBinaryString(i>>>5) + "=i>>>5  ");
		 System.out.println( Integer.toBinaryString(j>>>5) + "=j>>>5  ");
}
}

输出为:

i=2147483647
j=-2147483648
--左移位<<操作符:低位补0;
1111111111111111111111111111111 = i的二进制
11111111111111111111111111100000 =i<<5  
--有符号右移>>操作符:若符号为正,则在高位补0;若符号为负,则在高位补1;
1111111111111111111111111111111 = i的二进制
11111111111111111111111111=i>>5  
10000000000000000000000000000000 = j的二进制
11111100000000000000000000000000=j>>5  
--无符号右移>>>操作符:高位补0;
11111111111111111111111111=i>>>5  
100000000000000000000000000=j>>>5  


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值