我想在Java中将一些数据存储到字节数组中.基本上只是数字,每个数字最多可以占用2字节.
我想知道如何将整数转换为2字节长的字节数组,反之亦然.我在谷歌上找到了很多解决方案,但大多数都没有解释代码中发生了什么.有很多变化的东西我真的不太明白,所以我希望能有一个基本的解释.
我想在Java中将一些数据存储到字节数组中.基本上只是数字,每个数字最多可以占用2字节.
我想知道如何将整数转换为2字节长的字节数组,反之亦然.我在谷歌上找到了很多解决方案,但大多数都没有解释代码中发生了什么.有很多变化的东西我真的不太明白,所以我希望能有一个基本的解释.
使用java.nio
命名空间中的类,特别是ByteBuffer
命名空间中的类.它可以为你做所有的工作.
byte[] arr = { 0x00, 0x01 };
ByteBuffer wrapped = ByteBuffer.wrap(arr); // big-endian by default
short num = wrapped.getShort(); // 1
ByteBuffer dbuf = ByteBuffer.allocate(2);
dbuf.putShort(num);
byte[] bytes = dbuf.array(); // { 0, 1 }