开发者社区> 问答> 正文

取一个整数 a 从右端开始的 4~7 位

取一个整数 a 从右端开始的 4~7 位

展开
收起
珍宝珠 2020-02-13 18:00:57 2496 0
1 条回答
写回答
取消 提交回答
  • 先使 a 右移 4 位。

    设置一个低 4 位全为 1,其余全为 0 的数。可用~(~0<<4)

    将上面二者进行&运算。

    package cskaoyan;
     
    public class cskaoyan32 {
        @org.junit.Test
        public void logicalShift() {
            java.util.Scanner in = new java.util.Scanner(System.in);
            System.out.println("input a number:");
            int a = in.nextInt();
            int b = a >> 4;
            int c = ~(~0 << 4);
            int d = b & c;
            System.out.println(a + " " + d);
     
            in.close();
        }
    }
    
    2020-02-13 18:01:36
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载