How to print bytes in hexadecimal using System.out.println?

dedalo picture dedalo · Nov 17, 2009 · Viewed 102.4k times · Source

I've declared a byte array (I'm using Java):

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

How could I print the different values stored in the array?

If I use System.out.println(test[0]) it will print '10'. I'd like it to print 0x0A

Thanks to everyone!

Answer

bruno conde picture bruno conde · Nov 17, 2009
System.out.println(Integer.toHexString(test[0]));

OR (pretty print)

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

OR (pretty print)

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