2011-03-17 84 views
1

1字节= 8位。 我必须在120位工作。所以15字节。 这120位将采用00010101000000 ............ 的形式,因此每个00010101的8位是1个字节。 所以我想对它做一些修改操作,然后把所有的字节加回去。字节是否存储在字节数组中?如何将字节数据转换为位并再次转换回字节?

回答

2

如果你有大量的位,你可以使用BitSet。你可以使用byte []或long []它们无关紧要,因为它们都是由最后的位组成的。因为大多数JVM使用8字节边界来表示对象,所以使用byte []不会使对象的长度小于long []。对于某些操作,长[]更有效率。

+0

+1,因为当你有一组使用'BitSet'的位是直接匹配 – Waldheinz 2011-03-17 11:15:10

0

字节数组是个好主意。但是它取决于你如何存储它们...

0

以8位数据块拆分数据流,并为每个数据块使用Byte.valueOf(String,int)。

0

这取决于你如何存储字节。 您可以使用位操作(如&和|)修改字节。 例如:

 
x |= 2;