将一个 byte 转换为二进制可以使用 Java 内置的 Integer 类的 toBinaryString 方法。示例如下:
byte b = 10; // 假设要转换的 byte 值为 10
String binaryStr = Integer.toBinaryString(b);
System.out.println(binaryStr); // 输出结果为:00001010
该方法将 byte 转换为一个字符串,其中每一位表示一个二进制位。需要注意的是,如果 byte 的值为负数,则转换结果的前面会有一些 1,这是因为 Java 中 byte 类型是有符号类型,最高位表示符号位,如果是负数则为 1。
如果要将转换结果限定为固定长度的二进制数,可以使用 String.format 方法进行格式化,示例如下:
byte b = 10;
String binaryStr = String.format("%8s", Integer.toBinaryString(b & 0xFF)).replace(' ', '0');
System.out.println(binaryStr); // 输出结果为:00001010
这里将 byte 值与 0xFF 进行按位与运算,可以将其转换为无符号的 int 值,避免出现负数的情况。然后使用 String.format 将二进制字符串格式化为固定长度为 8 位,并用 replace 方法将空格替换为 0。