发布日期:2013-03-06 10:33 来源:未知 标签: Java 移位 运算符
 

移位运算符的面向对象也是二进制的“位”。可以单独用移位运算符来处理int型数据。它主要包括:左移位运算符(<<)、“有符号”右移位运算符(>>)、“无符号”右移运算符(>>>)

1)左移位运算符

左移位运算符,用符号“<<”表示。它是将运算符左边的对象向左移运动运算符右边指定的位数(在低位补0)。

2)“有符号”右移运算符

“有符号”右移运算符,用符号“>>”表示。它是将运算符左边的运算对象向右移动运算符右侧指定的位数。它使用了“符号扩展”机制,也就是说,如果值为正,在高位补0,若为负,则在高位补1。

3)“无符号”右移运算符

无符号”右移运算符,用符号“>>>”表示。它同“有符号”右移运算符的移动规则是一样的,惟一的区别就是:“无符号”右移运算符,它采用了“零扩展”,也就是说,无论值为正负,都在高位补0。

/*移位运算符测试*/

public class BitMotion
{
   public static void main(String[] args)
   {
     int a = 15;
     int b = 2;
     int x = a << b;
     int y = a >> b;
     int z = a >>> b;
     System.out.println(a + "<<" + b + "=" + x );
     System.out.println(a + ">>" + b + "=" + y);
     System.out.println(a + ">>>" + b + "=" + z);
    }
}

输出结果:
                 15 << 2 =60
                 15 >> 2 = 3
                 15 >>> 2 =3

 

相关评论

专题信息
    本教程的主要讲解java语言的核心基础知识,使读者能有个良好的语言基础,为以后进一步提高打下基础。宗旨是帮助更多想学习java的朋友快速入门,如果你是一个Java语言的初学者,那么就从Java教程,java数组,java环境变量配置,java网络编程,技巧等这里开始学习Java吧!