Šioje programoje sužinosite įvairių būdų, kaip konvertuoti baitų masyvą į šešioliktainę „Java“.
Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:
- „Java“ masyvai
- „Java“ klasė ir objektai
1 pavyzdys: konvertuokite baitų masyvą į šešiakampę vertę
public class ByteHex ( public static void main(String() args) ( byte() bytes = (10, 2, 15, 11); for (byte b : bytes) ( String st = String.format("%02X", b); System.out.print(st); ) ) )
Rezultatas
0A020F0B
Pirmiau pateiktoje programoje turime baitų masyvą, pavadintą baitais. Norėdami konvertuoti baitų masyvą į šešioliktainę reikšmę, mes peržengiame kiekvieną masyvo baitą ir naudojame String
's format()
.
Mes naudojame %02X
atspausdinti dvi 02
šešioliktainės ( X
) vertės vietas ( ) ir išsaugoti ją eilutėje st.
Tai yra palyginti lėtesnis didelių baitų masyvo konversijos procesas. Mes galime žymiai padidinti vykdymo greitį naudodami toliau pateiktas baitų operacijas.
2 pavyzdys: konvertuokite baitų masyvą į šešiakampę vertę naudodami baitų operacijas
public class ByteHex ( private final static char() hexArray = "0123456789ABCDEF".toCharArray(); public static String bytesToHex(byte() bytes) ( char() hexChars = new char(bytes.length * 2); for ( int j = 0; j >> 4); hexChars(j * 2 + 1) = hexArray(v & 0x0F); ) return new String(hexChars); ) public static void main(String() args) ( byte() bytes = (10, 2, 15, 11); String s = bytesToHex(bytes); System.out.println(s); ) )
Programos išvestis yra tokia pati kaip 1 pavyzdyje .