因为java里byte的范围是-128~127,不是0~255

解决方案 »

  1.   

    因为byte的范围是-128~~127,超过了之后即为-1,不过可以这样来表示
    byte  a =(byte)0X80;
    System.out.println(a);
    System.out.println(a & 0xff);
      

  2.   

    (byte)0X80
    如果整型值超过了byte的范围,那么将对该值以byte范围取模。
    取模是怎么取?
      

  3.   

    byte 是从-128~~127  当你的int为128时,将它赋值给byte是其结果为-128,相当于一个0~~9的10个数组成的一个圈,9的下一个又回到了0一样,往复循环。129(int)--》-127(byte) ; 130(int)--》-126(byte)…………