java核心技术第八版39页说:“>>>运算符将用0填充高位”,MSDN http://msdn.microsoft.com/zh-cn/library/ms228601(v=vs.80).aspx  上说:“唯一不能在 C# 中使用的 Java 运算符是移位运算符 (>>>)。因为 Java 中缺少无符号的变量,所以需要这一运算符处理需要向右移位以在最高有效比特位中插入 1 这种情况。”红色部分是什么意思啊Java位运算C#

解决方案 »

  1.   

    应该是MSDN的笔误。高位不是插入1,而是插入0
    他是想说,
    java 不存在 unsigned int 这类 无符号的基本类型。(全是正整数 0~4,294,967,296)
    (java  只有 -2,147,483,648  ~ 2,147,483,647)
    所以创造了一个>>>符号来,生成unsigned类型的数据。(因为>>>产生的全部是正数)
    下一句是 因为c#有unsigned类型的数据,所以不需要用>>>用>>就够了。
      

  2.   

    他翻译得不好的关系吧我想他本意是想表达因为java中缺少unsigned type(当然有jar),就需要>>>来弥补>>