java int转byte出现负数 byte转int的解决

1.java中  byte转int (特别注意)

byte b=0x01;

int a=0xff&b;  //正确


2. java中 int转byte

int a=0x01;

byte b=(byte)(a);



原因:java中byte是8位  -128~127之间,而int是32bit,在转化前需将高24位置零,这样就不会出现补码导致的转换错误。


展开阅读全文

没有更多推荐了,返回首页