Java 8位字节转换
我正在尝试将8个整数(0或1)的数组转换为java字节类型 e、 g 我试着在网上搜索,也许我没有输入正确的查询?提前谢谢 对读取数组的特定索引使用true/false,然后将其转换为字节数组Java 8位字节转换,java,arrays,byte,concatenation,Java,Arrays,Byte,Concatenation,我正在尝试将8个整数(0或1)的数组转换为java字节类型 e、 g 我试着在网上搜索,也许我没有输入正确的查询?提前谢谢 对读取数组的特定索引使用true/false,然后将其转换为字节数组 byte[] bits = { 1, 0, 1, 0, 0, 0, 1, 0 }; byte b = 0; for (int i = 0, m = 0x80; i < 8; i++, m >>= 1) { if (bits[i] == 1) b |
byte[] bits = { 1, 0, 1, 0, 0, 0, 1, 0 };
byte b = 0;
for (int i = 0, m = 0x80; i < 8; i++, m >>= 1) {
if (bits[i] == 1) b |= m;
}
太好了,这正是我想要的。谢谢当我能回答的时候,我会接受答案。嗯,所以我试着做bitset.set(7);它给了我一个意外的类型错误。有什么建议吗?
bitset.set(7,false)代码>:请参阅
byte[] bits = { 1, 0, 1, 0, 0, 0, 1, 0 };
byte b = 0;
for (int i = 0, m = 0x80; i < 8; i++, m >>= 1) {
if (bits[i] == 1) b |= m;
}
byte b = (byte) Integer.parseInt(Arrays.toString(bits).toString().replaceAll("\\D", ""), 2);