【发布时间】:2013-09-29 03:00:27
【问题描述】:
我正在尝试将一个包含 8 个整数(0 或 1)的数组转换为 java 字节类型。
例如
[1,0,1,0,0,0,1,0] = 10100010
我尝试在线搜索,也许我没有输入正确的查询?提前致谢!
【问题讨论】:
标签: java arrays byte concatenation
我正在尝试将一个包含 8 个整数(0 或 1)的数组转换为 java 字节类型。
例如
[1,0,1,0,0,0,1,0] = 10100010
我尝试在线搜索,也许我没有输入正确的查询?提前致谢!
【问题讨论】:
标签: java arrays byte concatenation
【讨论】:
bitset.set(7, false);:见docs.oracle.com/javase/7/docs/api/java/util/…
你可以试试这个
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);
【讨论】: