发布网友 发布时间:2022-04-26 13:40
共4个回答
热心网友 时间:2022-06-28 17:22
你是要把byte数组转成int数组吧,那肯定要移位了,byte类型是8位的整数,在内存占8位,而int是16位,你如果要把(byte)10变成(int)10,在内存就是将00001010(8位)变成00000000 00001010(16位),自然要移位了。追答据我所知,java中似乎没有这样的问题,而且你要就一个16位(byte)数转成32位(int)数,无论你怎么补码也不可能啊,lz呢你可能没看清楚问题吧,可以的话,将原问题给我
热心网友 时间:2022-06-28 17:22
这没什么,byte在内存中占8位而int型在内存中占16位,
热心网友 时间:2022-06-28 17:23
注:java中Int型数据并非固定的32位。追答简单说: Int类型的字节长度,取决于机器长度(系统类型);
也就是说,在16位中占16,在32位中则占32, 64位中占64。不过当前主流是32位
......突然想起来了,我说的是C++..晕死;
Java中应该也是这种情况
热心网友 时间:2022-06-28 17:23
一个字节就是8位啊