Програма Java за конвертиране на байтов масив в шестнадесетичен

В тази програма ще научите различни техники за преобразуване на байтов масив в шестнадесетичен в Java.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:

  • Java масиви
  • Java клас и обекти

Пример 1: Преобразуване на байтовия масив в шестнадесетична стойност

 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); ) ) )

Изход

 0A020F0B

В горната програма имаме байтов масив с име bytes. За да преобразуваме байтовия масив в шестнадесетична стойност, ние обикаляме всеки байт в масива и използваме String's format().

Използваме %02Xза отпечатване на две места ( 02) с шестнадесетична ( X) стойност и го съхраняваме в низа st.

Това е относително по-бавен процес за преобразуване на масивни байтове. Можем драстично да увеличим скоростта на изпълнение, използвайки байтови операции, показани по-долу.

Пример 2: Преобразуване на байтовия масив в шестнадесетична стойност с помощта на байтови операции

 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); ) )

Резултатът от програмата е същият като пример 1 .

Интересни статии...