`
coldbear
  • 浏览: 6633 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java移位运算符

阅读更多

java移位运算符分为三种,<<(左移),>>(带符号右移),>>>(不带符号右移)。对于byte和short类型,在移位运算前会首先把参与运算的数值转为int型,再进行移位运算,因此移位运算后得到的结果是一个整形数据。有符号数以补码表示,最高位为1代表负数,最高位为0则代表正数。所有位为0则表示0。在不溢出的情况下,<<(左移)移一位则代表原数值*2,带符号右移>>一位则代表原数值/2。

左移<<:所有位左移,低位补0。

带符号右移>>:所有位右移,低位舍弃,最高位补符号位(1:负数,0:正数)

不带符号右移>>>:所有位右移,低位舍弃,高位补0

	public static void main(String[] args) {
		byte n = -21;
		System.out.println("原值:"+Integer.toBinaryString(n));
		System.out.println("左移:"+Integer.toBinaryString(n<<1));
		System.out.println("带符号右移:"+Integer.toBinaryString(n>>1));
		System.out.println("不带符号右移:"+Integer.toBinaryString(n>>>1));
	}

 现实结果如下:

原值原值原值:11111111111111111111111111101011
左移左移左移:11111111111111111111111111010110
带带符号右移:11111111111111111111111111110101
不带符号右移:1111111111111111111111111110101(由于高位为0,没有显示)

分享到:
评论

相关推荐

    java 移位运算符的资源

    java 移位运算符 java 移位运算符 java 移位运算符

    Java移位运算符详解实例(小结)

    主要介绍了Java移位运算符详解实例(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    Java移位运算符1

    java中有三种移位运算符 : 左移运算符,num ,相当于num乘以2&gt;&gt; : 右移运算符,num &gt;&gt; 1,

    Java三种移位运算符原理解析

    主要介绍了Java三种移位运算符原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    Java中的进制与移位运算符

    Java中的进制与移位运算符 Java中的进制与移位运算符

    移位运算符

    移位运算符

    java中关于移位运算符的demo与总结(推荐)

    下面小编就为大家带来一篇java中关于移位运算符的demo与总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    java中的移位运算符心得总结

    介绍了java中的移位运算符,有需要的朋友可以参考一下

    Java运算符介绍.pptx.pptx

    Java运算符分类 Java运算符主要分为四类:算术运算符、关系运算符、逻辑运算符和位运算符,这些运算符...位运算符主要用于处理二进制数据,包括与、或、非、异或和移位等操作,它们可以实现对数据的快速处理和转换。

    Java移位运算

    主要讲述Java中移位运算,包括:基本数据类型范围、二进制的概念,移位运算符,基本数据类型与二进制之间的转换等。

    JAVA基础之java的移位运算

    因为Java 使用2的补码来存储负数,并且因为Java 中的所有整数都是有符号的,这样应用位运算符可以容易地达到意想不到的结果。例如,不管你如何打算,Java 用高位来代表负数。为避免这个讨厌的意外,请记住不管高位的...

    【IT十八掌徐培成】Java基础第02天-04.运算符-移位运算-逻辑运算.zip

    【IT十八掌徐培成】Java基础第02天-04.运算符-移位运算-逻辑运算.zip

    Java中的位运算符、移位运算详细介绍

    主要介绍了Java中的位运算符、移位运算,有需要的朋友可以参考一下

    2023最新整理版-java基础面试提

    2023最新整理,java...12. 移位运算符 12 13. continue、break 和 return 的区别是什么? 13 14. 成员变量与局部变量的区别? 15 13. 静态变量有什么作用? 15 14. 字符型常量和字符串常量的区别? 15 15. 什么是方法

    rev3_fe_rakuraku_toppa_java

    4.6移位运算符 4.7赋值运算符 4.8字符串串联运算符 4.9条件运算符?: 4.10比较运算符实例 4.11运算符优先级 章末问题 第五章控制声明 5.1句子类型 5.2 if陈述 5.3开关声明 5.4声明 5.5扩展用于声明 5.6...

    java2入门经典.part01

    java2入门经典.part01 Java2入门经典 图书目录 译者序 序 前言 第一章:Java概述 什么是Java ...移位运算 按位运算的方法 有固定序列整型值的变量(枚举) 布尔型变量 运算符的优先级 程序注释 本章小结 ……

    Java2入门经典.rar

    译者序 序 前言 第一章:Java概述 什么是Java Java语言的特性 学习Java ava程序 学习Java要走的路 ...移位运算 按位运算的方法 有固定序列整型值的变量(枚举) 布尔型变量 运算符的优先级 程序注释 本章小结 ……

    thinkinjava.chm

    3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 字串运算符+ 3.1.12 运算符常规操作规则 3.1.13 造型运算符 3.1.14 Java没有“sizeof” 3.1.15 复习计算顺序 3.1.16 运算符总结 3.2 执行控制 ...

    java 编程入门思考

    3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 字串运算符+ 3.1.12 运算符常规操作规则 3.1.13 造型运算符 3.1.14 Java没有“sizeof” 3.1.15 复习计算顺序 3.1.16 运算符总结 3.2 执行控制 ...

    Java初学者入门教学

    3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 字串运算符+ 3.1.12 运算符常规操作规则 3.1.13 造型运算符 3.1.14 Java没有“sizeof” 3.1.15 复习计算顺序 3.1.16 运算符总结 3.2 执行控制 ...

Global site tag (gtag.js) - Google Analytics