English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

教程基础Java

Controllo del flusso Java

Array Java

Java orientato agli oggetti (I)

Java orientato agli oggetti (II)

Java orientato agli oggetti (III)

Gestione delle eccezioni Java

List Java

Queue (coda) Java

Map collection Java

Set collection Java

Input/Output (I/O) Java

Reader/Writer Java

Altri argomenti Java

Il programma Java convertirà un array di byte in esadecimale

Completo di esempi Java

In questo programma, imparerai diversi metodi per convertire un array di byte in esadecimale in Java.

Esempio 1: Convertire un array di byte in un valore esadecimale

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

Quando eseguiamo questo programma, l'output è:

0A020F0B

Nel programma sopra, abbiamo un array di byte chiamato bytes. Per convertire l'array di byte in un valore esadecimale, esaminiamo ogni byte dell'array e utilizziamo format() della String.

Usiamo %02X per stampare due posizioni (02) del valore esadecimale (X) e lo memorizziamo nella stringa st.

Per la conversione di grandi array di byte, questo processo è relativamente lento. Possiamo utilizzare le operazioni su byte indicate di seguito per migliorare notevolmente la velocità di esecuzione.

Esempio 2: Convertire un array di byte in un valore esadecimale utilizzando operazioni su byte

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 < bytes.length; j++) {
            int v = bytes[j] & 0xFF;
            hexChars[j * 2] = hexArray[v >>> 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);
    {}
{}

L'output di questo programma è lo stesso dell'esempio 1.

Completo di esempi Java