移位运算符 是位操作运算符的一种。

移位运算符可以在二进制的基础上对数字进行平移。

按照平移的方向和填充数字的规则分为三种:<<(左移)、>>(右移)和>>>(无符号右移)。

<<      :    左移运算符,num <<1,相当于num乘以2

>>      :    右移运算符,num >>1,相当于num除以2

>>>    :    无符号右移,忽略符号位,空位都以0补齐,(计算机中数字以补码存储,首位为符号位)。

如:a  =  00110111,则a>>2    = 00001101,b=11010011,则b>>2   =  11110100;

如:a  =  00110111,则a>>>2  = 00001101,b=11010011,则b>>>2 =  00110100。

 //Integer.toBinaryString()是将数字用二进制格式显示int i = -10;System.out.println(Integer.toBinaryString(i));//左移两位int j = -10<<2;System.out.println(Integer.toBinaryString(j));//右移两位int m = -10>>2;System.out.println(Integer.toBinaryString(m));//无符号右移int n = -10>>>2;System.out.println(Integer.toBinaryString(n));

运算结果为:

11111111111111111111111111110110
11111111111111111111111111011000
11111111111111111111111111111101
111111111111111111111111111101(省略了首位两个0)

无符号右移的规则只记住一点:数字右移,左侧空出来的高位用0补齐。

java中的三种移位运算符相关推荐

  1. 分析Java中的三种不同变量的区别

    1.首先分析Java中的三种不同变量的区别,如下表所示   概念 默认值 其他 类变量 也叫静态变量,是类中独立于方法之外的变量 用static 修饰 有默认初始值,系统自动初始化. 如boolean ...

  2. java三种移位运算符

    java中有三种移位运算符 << : 左移运算符,num << 1,相当于num乘以2 >> : 右移运算符,num >> 1,相当于num除以2 &g ...

  3. 详解 Java 中的三种代理模式

    代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能. 这里使用 ...

  4. Java中的三种代理模式解释

    本文转自:Java技术栈 www.javastack.cn 代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的 ...

  5. 【 史上最坑爹的Java代码系列02 】Java中的三种代码块

    Java中有三种代码块,三种代码块中的代码执行的优先级是面试中会被提问到的问题. 三种代码块:静态代码块.方法代码块.普通代码块 其中,普通代码块是比较少见而且比较少使用的. package com. ...

  6. java中的三种IO(BIO、NIO、AIO)

    IO 阻塞和非阻塞主要指的是访问 IO 的线程是否会阻塞(或者说是等待) 线程访问资源,该资源是否准备就绪的一种处理方式 BIO(传统的IO) BIO是同步阻塞式的IO,以流的方式处理数据(效率低) ...

  7. Java中的三种输出print、printf、println

    均为Java.long包里的System类中的方法. 1.print 输出时自动转化为字符串并且不会换行. 2.println 与print的用法基本相同,但是会换行(相当于在print后面添加一个\ ...

  8. java中利用三种循环对一到一百之间六的倍数出现多少次的代码

    while循环: class test1{ public static void main(String[]args) {int count=0; //定义变量存储6的倍数出现的次数int i=1;w ...

  9. java循环控制语句,简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别。...

    简述Java流程控制语句中的三种循环控制语句,并描述下它们的区别. 答:for语句,构建确定循环次数的循环结构 while语句,通常构建不确定循环次数的循环结构 do-while语句,通常构建不确定循 ...

最新文章

  1. linux的ftp226,ftp服务器 不返回 226
  2. 初识jvm-1.Java类的加载机制
  3. w7系统装天联高级版服务器,w7系统有几个版本你都知道吗?
  4. 基于PyTorch框架的多层全连接神经网络实现MNIST手写数字分类
  5. pom.xml里发布和下载包
  6. Spring Enable*高级应用及原理
  7. bootstrap signin将邮件改成用户名_了解电子邮件传递背后的流程
  8. Pandas.plot 做图
  9. 深入浅出UML类图(二)
  10. STM32L031 BMI160 陀螺仪检测到移动向单片机发送中断
  11. 深蓝超级计算机象棋人机大战,象棋人机大战绝唱:超级计算机“浪潮天梭”vs“象棋第一人”许银川的巅峰之战...
  12. SEO入门知识2:不同角度看seo
  13. 《鹿鼎记》中归家三侠击杀的是真太后还是假太后
  14. 云计算如何运用在政府行业--解决方案
  15. 工业相机的曝光方式:全局曝光、卷帘曝光、全局复位释放曝光区别
  16. gaussdb200 数据导入
  17. MTK 6761平台 android O bootloader启动之 Pre-loader - Lk
  18. H. 田忌赛马---故事新编
  19. 萧乾升:4.17黄金白银TD实时最新策略,名师在线解套
  20. 微信小程序调用百度文字转语音API

热门文章

  1. 尘封多年的期权,价值千万...
  2. 计算机网络——常考的面试题
  3. STM32的USART串口通信
  4. Photoshop---Wacom手绘板绘画画变成了拖动,根本不能画画
  5. [PTA]实验3-6 计算个人所得税
  6. 2021天梯赛L1-079 天梯赛的善良 题解
  7. 纯Java实现坦克大战游戏,源码公开
  8. windows 建立窗口的程序代码
  9. 小布老师讲座笔记(一)
  10. 设计模式中的工厂类图