У цій програмі ви навчитесь різним методам перетворення байтового масиву в шістнадцятковий на 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 .