JAVA <<、>>运算符

java <<左移、>>右移运算符都是针对二进制进行运算的,示例如下:

		int x = 2 << 3;
		//2 的二进制: 10
		// <<左移符号 -> 左移 3 位 ,2的二进制后加 3 个0 => 10000 转为十进制 =2^4*1 + 2^3*0 + 2^2*0 + 2^1*0 + 2^0*0 = 16
		int y = x >> 3;
		//x 的二进制: 10000
		// >>右移符号 -> 右移 3 位 ,x的二进制后去 3 个0 => 10 转为十进制 =2*1 + 1*0 = 2
		System.out.println("x=" + x);
		System.out.println("y=" + y);
		// 1010=10; 1011=11; 1110=14; 1111=15
        int a = 10 >> 3;
        int b = 11 >> 3;
        int c = 14 >> 3;
        double d = 15 >> 3;
        System.out.println("a=" + a);
        System.out.println("b=" + b);
        System.out.println("c=" + c);
        System.out.println("d=" + d);

在这里插入图片描述

经过测试发现,可以当作左移 x 位,便是在该数的二进制后添加 x 个0或乘以 2 的 x 次方,右移 x 位,便是将该数的二进制后 x 个数(无论 0 或 1)删掉(若不够删则结果为0)或除以 2 的 x 次方;

学习路上,理解若有误请大佬指正!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值