`

转载:Java的位移操作

 
阅读更多

“<<”, “>>”, “>>>”在Java中是左移、有符号右移和无符号右移运算符。位移运算符只对int值进行操作,如果不是int,编译器会报错[注解:此处说法可能有错,待验证,可能为这些整数类型包括long,int,short,char,and byte]。在Java中,一个int的长度始终是32bit,也就是4个字节。

比如t>>>n的含义就是把整数t右移n位,高位补上零。所以如果t是个负数,最高位是1,那么经过无符号右移之后,就成了一个正数。比如 -1>>>31=1。

值得注意的是,虚拟机在进行位移操作之前,把位移的位数(即“t>>>n”中的n)对32取了模,左移或右移33位等价于移动1位,而且无论任何数,使其移动32位,其值都不会发生变化。因为在虚拟机看来,t>>>32与t>>>0是等价的(同理t<<32等价于t<<0)。移动64位也是如此,以此类推。

那如果移动的位数 n 是负数怎么办呢?。这时虚拟机会先让n对32取模,变成一个绝对值小于32的负数,然后再加上32,直到 n 变成一个正数。比如(k>>>-1) ==> (k>>>31); (k>>-43) ==> (k>>-11) ==> (k>>>21)。

分享到:
评论

相关推荐

    实验五:光纤位移传感器-位移测试实验.docx

    半导体工艺原理实验。实验五:光纤位移传感器-位移测试实验

    JAVA工程师笔试题汇总(免费)

    知识点6:Java位移操作符 在Java中,有两种位移操作符:&gt;&gt;和&gt;&gt;&gt;. &gt;&gt;是带符号位移操作符,&gt;&gt;&gt;是无符号位移操作符。例如,1010 0000 0000 0000 0000 0000 0000 0000 &gt;&gt; 4将结果为0000 1010 0000 0000 0000 0000 0000 ...

    java byte相互转换详解左右位移

    java基本类型转byte,设计原码、补码、反码、左右位移等知识,赚点积分

    基于ATMEGA128单片机的微位移测量系统.doc

    "基于ATMEGA128单片机的微位移测量系统" 微位移测量是指对对象的微小位移或形变进行测量和检测的过程。在实际生产和生活中,微位移测量有着广泛的应用,如冶金行业的轧钢设备、机械行业的注塑、压铸印刷和包装、...

    基于地基合成孔径雷达的结构位移监测:连续位移监测和杂波抑制的matlab实现.zip

    2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    java平时实验java平时实验.doc

    10. **字符串处理**:Java的`String`类提供了丰富的字符串操作方法,如连接、查找、替换等。 在实验过程中,通过编写和运行各种小程序,你可以深入理解这些概念,并提高编程技能。例如,Example1.java程序展示了位...

    通信用单模光纤 第1部分:非色散位移单模光纤特性

    通信用单模光纤 第1部分:非色散位移单模光纤特性

    传感器课设霍尔位移传感器的设计

    霍尔位移传感器的设计 霍尔位移传感器是一种基于霍尔效应的磁传感器,用于检测磁场及其变化。霍尔元件已发展成一个品种多样的磁传感器产品簇,并且得到广泛的应用。 霍尔效应是磁电效应的一种,霍尔于1879年在研究...

    电容式传感器的位移特性实验

    电容式传感器的位移特性实验 在电容式传感器的位移特性实验中,我们可以了解电容式传感器结构及其特点。电容式传感器是一种常用的检测技术,通过改变电容传感器的参数,可以实现测量液位、位移和干燥度等多种功能。...

    基坑支护水平位移观测记录表.doc

    基坑支护水平位移观测记录表.doc 基坑支护水平位移观测记录表是 Construction Engineering 中的一种重要记录表格,用于记录基坑支护工程中的水平位移数据。下面是相关的知识点: 一、基坑支护概念: 基坑支护是指...

    钉钉可用 软件:位移精灵

    可以定位 改步数 改wifi 模拟拍照 改机型 打卡必备 有一些需要现场拍照 也可以使用,这个是修改版 我也不记得哪里来的了 名字叫位移精灵

    动物位移小游戏Java实现,强行使用上了SQLite和MyBatis.zip

    动物位移小游戏Java实现,强行使用上了SQLite和MyBatis.zip动物位移小游戏Java实现,强行使用上了SQLite和MyBatis.zip动物位移小游戏Java实现,强行使用上了SQLite和MyBatis.zip动物位移小游戏Java实现,强行使用上...

    德国米铱激光位移传感器操作手册.pdf

    德国米铱激光位移传感器操作手册pdf,德国米铱激光位移传感器操作手册

    欧姆龙位移传感器/测长传感器产品选型.pdf

    欧姆龙位移传感器/测长传感器产品选型pdf,欧姆龙位移传感器/测长传感器产品选型:所谓位移传感器,是利用各种元件检测对象物的物理变化量,通过将该变化量换算为距离,来测量从传感器到对象物的距离位移的机器。...

    Java基础练习题.pdf

    11. **浮点数与整数的位移操作**:Java中的位移操作符适用于整数类型。题目中的代码将进行位移操作,输出结果是"32, -4",因此答案是A。 12. **字符串与数值的连接**:在Java中,字符串与数值连接时,数值会被转换...

    10_02.rar_10_02_java 位移

    这是一个java程序,使用了中点位移法自动生成分形山,在上面还提供了一些注释,可以作为课程设计的参考资料

    无参考的多通道信号组合:化学位移编码水脂成像的演示

    无参考的多通道信号组合:化学位移编码水脂成像的演示

    MidpointDisplacement:中点位移算法的实现

    中点位移算法创建“逼真”外观的一种方法是使用中点位移算法,这是一种菱形平方算法。 我的实现使用递归将一条线分成两半 2^X 次,然后将其绘制到面板上。 按任意按钮重新创建和重绘它。 ##History 于 2014 年 2 月...

    Java byte 位移操作 注意事项

    Java对byte 的 + – * / &gt;&gt; &gt;&gt;&gt; &lt;&lt; & | ^ (加,减,乘,除,右移,左移,无符号右移,位与,位或,位异或)操作,均会是首先将byte转化为int, 再行运算。这一事实可能导致多种问题:  假设我们想进行如下...

    java位运算操作

    Java位运算操作 左位移 右位移 与或非的操作

Global site tag (gtag.js) - Google Analytics