i am newbie,help u up .....

解决方案 »

  1.   

    >>> 是右移运算符,左边不够的地方补0
    >> 右移运算符
    << 左移运算符-1>>>2
    -1在Java中用1111 1111 1111 1111 1111 1111 1111 1111来表示右移两位为
    0011 1111 1111 1111 1111 1111 1111 1111其结构为1073741823
    Java中表示负数的方法是将负数对应的正数全部取反,然后加1.如整数1用
    0000 0000 0000 0000 0000 0000 0000 0001表示.Java中是用2的补码来存储负数的
      

  2.   

    对啊,这个问题也就是考查了JAVA与C++的区别啊,在Think in java中也有说过啊~~~~~~~
    Java增添了三个右移位运算符“>>>”,具有与“逻辑”右移位运算符类似的功用,可在最末尾插入零值。“>>”则会在移位的同时插入符号位(即“算术”移位)。
      

  3.   

    System.out.println(2<<-1);呢?
      

  4.   

    (回答)System.out.println(2<<-1);呢?
    -1在Java中用1111 1111 1111 1111 1111 1111 1111 1111来表示.看一下计算机组成原理移位原理就知道结果是0了
      

  5.   

    -1>>>2
     结果是0011 1111 1111 1111 1111 1111 1111 1111 是2~30-1
    -1>>2 结果仍然是-1
    2<<-1 结果是0
      

  6.   

    详细点好不?我对于(-1>>2)和(2<<-1)不是太明白呀。