`

Java中的移位运算符

 
阅读更多

java中有三种移位运算符

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

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

>>>    :     无符号右移,忽略符号位,空位都以0补齐

 

package com.b510.test;
/**
 * @author Jone Hongten
 * @create date:2013-11-2
 * @version 1.0
 */
public class Test {

    public static void main(String[] args) {
        int number = 10;
        //原始数二进制
        printInfo(number);
        number = number << 1;
        //左移一位
        printInfo(number);
        number = number >> 1;
        //右移一位
        printInfo(number);
	number = number >>> 1;
       printInfo(number);
    }
    
    /**
     * 输出一个int的二进制数(注意的是int类型32位,long类型64位)
     * @param num
     */
    private static void printInfo(int num){
        System.out.println(Integer.toBinaryString(num));
    }
}
//运行结果
1010
10100
1010
101

 对结果对其说明:

43210      位数
--------
 1010      十进制:10     原始数         number
10100      十进制:20     左移一位       number = number << 1;
 1010      十进制:10     右移一位       number = number >> 1;
 101       十进制:5     无符右移一位       number = number >>> 1;

对于:>>>

 无符号右移,忽略符号位,空位都以0补齐

value >>> num     --   num 指定要移位值value 移动的位数。

无符号右移的规则只记住一点:忽略了符号位扩展,0补最高位  无符号右移运算符>>> 只是对32位和64位的值有意义

 

http://www.cnblogs.com/hongten/p/hongten_java_yiweiyunsuangfu.html

分享到:
评论

相关推荐

    java 移位运算符的资源

    Java 移位运算符是编程语言中用于处理二进制位的一种高效操作方式,它们能够对整数类型(byte, short, int, long)的值进行左移、右移和无符号右移操作。理解这些运算符对于优化代码和深入理解计算机底层工作原理至...

    Java移位运算符1

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

    Java中的进制与移位运算符

    在Java编程语言中,进制表示法和移位运算符是两种重要的概念,它们在处理二进制数据和高效计算中发挥着关键作用。本文将深入探讨这两种概念,并结合实例来帮助理解。 首先,让我们来看Java中的进制表示法。在计算机...

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

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

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

    Java移位运算符是Java编程语言中的一种基本操作符,主要用于对二进制数的移位操作。Java中有三种移位运算符:左移运算符()、带符号右移运算符(&gt;&gt;)和无符号右移运算符(&gt;&gt;&gt;)。下面我们将详细介绍这三种移位...

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

    Java中的移位运算符心得总结 Java中的移位运算符是指在Java编程语言中用于执行位ewise操作的运算符。它包括左移运算符()、右移运算符(&gt;&gt;)和无符号右移运算符(&gt;&gt;&gt;)。这些运算符可以对整数类型的变量进行位...

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

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

    java运算符大全

    16. **带符号右移位运算符** (&gt;&gt;): 根据符号位扩展,向右移动指定位数,高位补0(正数)或1(负数)。 17. **无符号右移运算符** (&gt;&gt;&gt;): 不考虑符号位,向右移动指定位数,高位用0填充。 18. **小于运算符** (&lt;): ...

    Java中常见的几种运算符.doc

    这些符号可以分为七类:算术运算符、关系运算符、位运算符、逻辑运算符、移位运算符、三元运算符和赋值运算符。 一、算术运算符 算术运算符是指用于执行算术运算的符号,例如 +、-、*、/、% 等。这些符号可以用来...

    移位运算符

    ### 移位运算符在Java中的应用 #### 概述 在计算机科学中,移位运算符是一种重要的操作,主要用于处理二进制数据。在Java编程语言中,提供了三种主要的移位运算符:左移运算符(`)、带符号右移运算符(`&gt;&gt;`)以及...

    JAVA运算符.pdf

    Java中的位运算符对整型数值中的每一位进行操作,包括逻辑位运算符和移位运算符。移位运算符可以用于高效的乘除法计算,如`x 相当于`x * 2^n`,`x &gt;&gt; n`相当于`x / 2^n`。 类型转换可以是自动的(如较小类型转换为...

    java中的位运算符和运算符优先级.docx

    这些运算符包括移位运算符(左移位`,右移位`&gt;&gt;`和无符号右移位`&gt;&gt;&gt;`)以及逻辑位运算符(非`~`,与`&`,异或`^`,或`|`)。理解这些运算符的用法和特性对于编写高效的代码至关重要。 1. **移位运算符**: - 左...

    java学习笔记之我的笔记

    通过本章节的学习,我们将深入了解Java中的左移位运算符的工作原理及其应用。 ##### 1.1 左移位运算符的语法与含义 左移位运算符的语法形式为 `a ,其中`a`是被移位的整数,`b`是要移动的位数。例如,假设`a = 4` ...

    Java运算符+优先级、目数+.pdf

    Java中的移位运算符包括: * 左移位():从左到右的双目运算符,用于将变量左移指定的位数。 * 带符号右移(&gt;&gt;):从左到右的双目运算符,用于将变量右移指定的位数,并保留符号位。 * 无符号右移(&gt;&gt;&gt;):从左到...

    Java运算符优先级

    5. **移位运算符**: - `(左移)、`&gt;&gt;`(右移)、`&gt;&gt;&gt;`(无符号右移)。 - 结合性是从左向右,即先处理左边的操作数。 6. **比较运算符**: - `、`、`&gt;`、`&gt;=`、`instanceof`。 - `instanceof`用于判断一个...

    JAVA基础之java的移位运算

    Java的移位运算涉及到整数类型数据的二进制位操作,这对于理解计算机底层运作和优化代码至关重要。移位运算主要包括左移运算符()和右移运算符(&gt;&gt;,&gt;&gt;&gt;)。在Java中,所有的整数类型(除了char类型外)都是有符号...

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

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

    java运算符优先级.doc

    5. 移位运算符:、&gt;&gt;、&gt;&gt;&gt; 6. 比较运算符:==、!=、&lt;、&gt;、、&gt;= 7. 逻辑运算符:&&、|| 8. 赋值运算符:=、+=、-=、\*=、/=、%=、、&gt;&gt;=、&=、^=、|=、&gt;&gt; 二、Java 异常处理 Java 中的异常处理机制可以帮助开发者...

Global site tag (gtag.js) - Google Analytics