Java的位运算符

/**
 * @author ThompsonGuo
 * @date 8/23 22:11
 */
//正数的左移或者右移操作都是空位补0;
//而负数的左移是空位补0,符号位不变,若所移动位数超出符号位则左移结果为原数,右移是空位补1。
//负数的无符号右移<<<与右移相同

public class byteMove {
    public static void main(String[] args) {
        int i = 1; (0001)
        int j = -1; (1111)

        int a1 = i << 1; (0010)2
        int a2 = i >> 1; (0000)0

        int b1 = j << 2; (1100)-4
        int b2 = j >> 2; (1111)-1

        System.out.println("i左移一位是:" + a1);
        System.out.println("i右移一位是:" + a2);
        System.out.println("j左移2位是:" + b1);
        System.out.println("j右移2位是:" + b2);

    }
}
i左移一位是:2
i右移一位是:0
j左移2位是:-4
j右移2位是:-1


全部评论

相关推荐

不愿透露姓名的神秘牛友
07-11 11:24
大家还是用ai改吧,我心疼得要死,就当花钱买教训吧,人家直接拿完钱就跑路了
程序员小白条:简历修改700....神奇,又不是帮你面试,咋的,简历修改从双非变92了还是没实习变成有大厂实习了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
我看看你怎么个事来
牛牛爱吃草草:我看看你怎么个事来
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务