如何使用 System.out.println 以十六进制打印字节?

2022-09-01 07:17:05

我已经声明了一个字节数组(我使用的是Java):

byte test[] = new byte[3];
test[0] = 0x0A;
test[1] = 0xFF;
test[2] = 0x01;

如何打印存储在数组中的不同值?

如果我使用System.out.println(test[0]),它将打印“10”。我希望它能打印0x0A

感谢大家!


答案 1
System.out.println(Integer.toHexString(test[0]));

(漂亮的印刷品)

System.out.printf("0x%02X", test[0]);

(漂亮的印刷品)

System.out.println(String.format("0x%02X", test[0]));

答案 2
for (int j=0; j<test.length; j++) {
   System.out.format("%02X ", test[j]);
}
System.out.println();