`

Java中的位移运算符

 
阅读更多
>>   <<   有符号位移
>>>  <<<  无符号位移

位移,就是将数字所对应的二进制数据向某个方位移动指定的位数。移动后,遗弃一部分,补充一部分。

10101010001   >> 1
向右位移 一位,最后的 1 删除,首部是 1 填充一个 1 
11010101000

位移时,Java根据最高位是几,位移后,就补充几。
而在c语言的位移,最高位填充几是根据系统决定的,所以这也是C语言不跨平台的一个小细节。


========================================================================================================================
	位移能够实现整数 乘以 或 除以  2的N次方的效果。
	3>>1   等于 3/2的1次方
	3<<1   等于 9*2的1次方
	3>>2   等于 3/2的2次方
	3<<2   等于 3*2的2次方

	一个数左移 N 位,等于 这个数 乘以 2的N次方
	一个数右移 N 位,等于 这个数 除以 2的N次方


System.out.println(8>>1);  //   8 / 2的1次方 = 4

System.out.println(8>>2);  //   8 / 2的2次方 = 2

System.out.println(8<<1);  //   8 * 2的1次方 = 16

System.out.println(8<<2);  //   8 * 2的2次方 = 32
 
分享到:
评论

相关推荐

    java位运算符.pdf

    位运算符分为两大类:位逻辑运算符和位移运算符。位逻辑运算符包括按位与(AND)、按位或(OR)、按位异或(XOR)和按位非(NOT)。位移运算符则有右移(&gt;&gt;&gt;和&gt;&gt;)和左移()。 1. **位逻辑运算符**: - **按位非...

    李妍的Java学习之路-Java运算符

    位运算符,如 AND (&), OR (|), XOR (^), NOT (~) 以及位移运算符 (, &gt;&gt;, &gt;&gt;&gt;),作用于整数类型的二进制表示。位运算符直接操作二进制位,例如 `a & b` 会返回 `a` 和 `b` 的二进制与运算结果。位移运算符会改变数字...

    Java运算符+(优先级、目数)+.doc

    11. **位移运算符(, &gt;&gt;, &gt;&gt;&gt;):** 左移位运算符将二进制位向左移动指定位数,右移位运算符则向右移动。无符号右移运算符对负数也会填零。这些都是双目的运算符,从左到右结合。 12. **关系运算符(&lt;, &gt;, , &gt;=, ...

    Java运算符常见面试题及答案

    11. **位移运算符**:左移()和右移(&gt;&gt;)用于将二进制位向左或向右移动指定的位数。例如,`5 将返回20(二进制表示为101左移两位变为10100)。 12. **取反运算符**:`~`用于对整数进行按位取反,将0变为1,将1...

    java运算符优先级[借鉴].pdf

    Java语言中的运算符优先级是指在Java语言中各种运算符的执行顺序和结合性。了解Java运算符优先级是非常重要的,因为它可以帮助我们正确地编写Java程序,避免一些常见的错误。 以下是Java运算符优先级的详细列表: ...

    Java移位运算符1

    在Java编程语言中,移位运算符是一种高效的方式来进行位操作,它们对于处理二进制数据和进行快速的乘法、除法等计算非常有用。本文将深入探讨Java中的三种移位运算符:左移运算符(),右移运算符(&gt;&gt;)以及无符号右...

    Java运算符.docx

    Java运算符是编程中不可或缺的部分,它们用于执行各种计算、比较和逻辑操作。在Java中,运算符可以分为多个类别,包括算术运算符、关系运算符、逻辑运算符、赋值运算符以及位运算符。 1. **算术运算符**:包括`+`、...

    Java编程详细教程运算符表达式流程控制上PPT教案学习.pptx

    位移运算符`和`&gt;&gt;`分别用于左移和右移位,`&gt;&gt;&gt;`是无符号右移,移位过程中高位不会填充符号位。 最后,赋值运算符允许我们简洁地进行赋值操作,比如`x+=y`相当于`x = x + y`。同时,Java支持将其他运算符与赋值...

    10_02.rar_10_02_java 位移

    3. 位移运算符:深入理解、&gt;&gt;和&gt;&gt;&gt;的用法及它们对二进制数据的影响。 4. 图形生成:如何通过编程实现分形山的可视化。 5. 注释规范:良好的编程习惯,通过注释解释关键代码的功能和作用。 通过分析并运行这个程序,...

    浅析Java语言在计算机软件开发中的应用.pdf

    Java语言的运算符包括赋值运算符、关系运算符、算数运算符、逻辑运算符、条件运算符、位运算符和位移运算符七种。Java语言的运算符可以操作常量与变量,Java语言的运算符对编程表达形式有各自特别的要求。在运算时...

    Java运算符优先级别.doc

    5. **位移运算符** `, `&gt;&gt;`, `&gt;&gt;&gt;`:从左到右结合。 - **左移** `将二进制数的各位向左移动。 - **右移** `&gt;&gt;`:将二进制数的各位向右移动。 - **无符号右移** `&gt;&gt;&gt;`:与右移类似,但高位补0。 6. **比较运算符*...

    Java程序设计基础:运算符与表达式.pptx

    本文将深入探讨Java中的各种运算符及其用法,并通过实例讲解如何正确地使用这些运算符来构建有效的表达式。 #### 二、表达式的基本概念 - **表达式**是由操作数和运算符组成的结构,它表示一种值。 - **操作数**...

    JAVA中位运算符合移为运算符

    在Java编程语言中,位运算符和移位运算符是处理二进制数据的重要工具,它们在底层操作中发挥着关键作用。本文将深入探讨这两个主题,并通过实例解析其工作原理。 位运算符直接作用于整数类型的二进制表示,包括与(&...

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

    Java移位运算符是Java语言中的一种基本运算符,用于对二进制数进行位移操作。移位运算符主要包括左移位运算符()、右移位运算符(&gt;&gt;&gt;)和带符号的右移位运算符(&gt;&gt;)。这些运算符可以单独用来处理int型整数。 1. ...

    3.2.2 java中的关系与条件运算符.pdf

    在Java编程语言中,关系与条件运算符是构建复杂逻辑判断的重要工具。关系运算符主要用于比较两个值之间的关系,而条件运算符则用于基于不同条件生成不同结果。以下是这些运算符的详细说明: **关系运算符**: 1. `&gt;...

    Java SE-基础篇-运算符、随机数(Random)、方法、数组-入门级讲解

    - 位运算符:如按位取反(`~`), 按位与(`&`), 按位或(`|`), 按位异或(`^`)以及位移运算符,如左移(`), 带符号右移(`&gt;&gt;`)和无符号右移(`&gt;&gt;&gt;`)。位移运算符常用于快速计算乘法和除法。 2. 随机数(Random): Java中...

    JAVA选择题复习.txt

    - Java中的位移运算符包括`&gt;&gt;`(右移)、`(左移)和`&gt;&gt;&gt;`(无符号右移)。 #### 19. 位运算操作 - `&gt;&gt;&gt;`为无符号右移运算符,用于将二进制数进行右移操作,高位补零。 #### 20. 浮点数取模运算 - 浮点数也可以...

    Java操作符的优先级和结合性

    6. 移位运算符:`、`&gt;&gt;`、`&gt;&gt;&gt;` —— 从左到右执行,用于位移操作,如 `a 。 7. 关系运算符:`、`、`&gt;`、`&gt;=`、`instanceof` —— 从左到右执行,用于比较操作,如 `a 。 8. 相等运算符:`==`、`!=` —— 从左到右...

Global site tag (gtag.js) - Google Analytics