java位移运算
来源:互联网 发布:linux删除临时文件 编辑:程序博客网 时间:2024/05/01 16:45
“ < <”, “> > ”, “> > > ”在Java中是左移、有符号右移和无符号右移运算符。位移运算符只对int值进行操作,如果不是int,编译器会报错。在Java中,一个int的长度始终是32bit,也就是4个字节。
(1)左移动运算符:
会将操作的数向左边移动,移动的位的个数由左操作数指定,左移后,低位会被自动补零(0)。
(2)右移动运算符:
反过来,把操作数向右移动,移动的位个数同样由右操作数指定。注意:面对带正负号的数,会采用符号扩展,如果原值是正数,则高位补上0;如果原值是负数,高位补1。
(3)无正负号的右移运算符(>>>):
采用0补充,意思就是说,无论是正号还是负号,都在高位补0。
下面我要对这三个运算符进行详细解析:
1:准备 知识
能够将 正数 和 负数 的二进制码进行 熟练的转换;
转换原则: 取反加“1”
如有疑问,参见文章 “java基本知识系列三”中的内容
2:以实例来 说明分析 运算 操作。
public class Test {
public static void main(String[] args) {
int m=-7;
System.out.println("m的二 进 制 码是:"+Integer.toBinaryString(m));
System.out.println("m>>2的二进制码是:"+Integer.toBinaryString(m>>2));
System.out.println("(m>>2)="+(m>>2));
System.out.println("m<<2的二进制码是:"+Integer.toBinaryString(m<<2));
System.out.println("(m<<2)=:"+(m<<2));
System.out.println("m>>>24的二进制码是:"+Integer.toBinaryString(m>>>24));
System.out.println(" m>>>24 :"+ (m>>>24));
}
}
执行结果:
m的二 进 制 码是:11111111111111111111111111111001
m>>2的二进制码是:11111111111111111111111111111110
(m>>2)=-2
m<<2的二进制码是:11111111111111111111111111100100
(m<<2)=:-28
m>>>24的二进制码是:11111111
m>>>24 :255
- java位移运算
- java位移运算
- java 位移运算
- java基础 位移运算
- Java 位移运算
- java 位移运算符
- java位移运算
- Java 中的位移运算
- Java位移运算符
- java位移运算符
- Java位移运算符
- Java位移运算符
- Java位移运算符
- Java 位移运算符
- Java位移运算符
- java的位移运算
- java 位移运算
- java位移运算符
- setupdll在CAB安装过程中的一些处理方法
- doubleselect用法 显示不换行
- 用ul li 制作表格样式
- memcached罢工引发的血案-博客园评论超时问题处理过程
- 对csdn陌生...55555
- java位移运算
- WCF - 大数据传输
- BEZIER程序
- struts2里面action跳action的问题
- 几款很漂亮的CSS控制的按钮样式
- 釜鸣预测法
- 刚学会的链表...慢慢改进....
- 关于ASp.NEt方面的好书,不得不看啊!!![转]
- 火逸预测法