On peut rencontrer une situation où il faut convertir un tableau d'octets en valeurs hexadécimales correspondantes. Java fournit une méthode simple pour réaliser cette conversion efficacement.
L'approche la plus concise pour convertir un tableau d'octets en hexadécimal consiste à utiliser la classe StringBuilder :
byte[] bytes = {-1, 0, 1, 2, 3 }; StringBuilder sb = new StringBuilder(); for (byte b : bytes) { sb.append(String.format("%02X ", b)); } System.out.println(sb.toString());
Ce code parcourt chaque octet du tableau, le convertit en une chaîne hexadécimale avec des zéros non significatifs (X) et l'ajoute à la chaîne constructeur. La chaîne résultante contient les valeurs hexadécimales séparées par des espaces.
Certains scénarios peuvent nécessiter la conversion d'un tableau de chaînes de valeurs décimales en chaînes hexadécimales. Cela peut être réalisé comme suit :
String[] arr = {"-1", "0", "10", "20" }; for (int i = 0; i < arr.length; i++) { arr[i] = String.format("%02x", Byte.parseByte(arr[i])); } System.out.println(java.util.Arrays.toString(arr));
Ce code convertit chaque chaîne du tableau en octet, puis utilise la méthode String.format pour créer une chaîne hexadécimale avec des zéros non significatifs.
Notez que Integer.toHexString(int) peut également être utilisé, mais soyez prudent quant à l'extension de signe lorsque vous travaillez avec des valeurs d'octets négatives. Alternativement, la solution String.format est plus fiable et flexible.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!