Heim > Java > javaLernprogramm > Wie konvertiere ich eine Ganzzahl in ein Byte-Array in Java?

Wie konvertiere ich eine Ganzzahl in ein Byte-Array in Java?

Patricia Arquette
Freigeben: 2024-11-23 11:43:53
Original
618 Leute haben es durchsucht

How to Convert an Integer to a Byte Array in Java?

Ganzzahl in Byte-Array konvertieren (Java)

In Java kann die Konvertierung einer Ganzzahl in ein Byte-Array mit verschiedenen Ansätzen erreicht werden. Eine effiziente Methode ist die Verwendung der ByteBuffer-Klasse:

ByteBuffer b = ByteBuffer.allocate(4);
b.putInt(0xAABBCCDD);

byte[] result = b.array();
Nach dem Login kopieren

Im obigen Codeausschnitt ist die Bytereihenfolge des ByteBuffer auf BIG_ENDIAN festgelegt. Infolgedessen enthält result[0] das höchstwertige Byte (0xAA), gefolgt von result[1] (0xBB), result[2] (0xCC) und result[3] (0xDD).

Alternativ können Sie die Ganzzahl manuell konvertieren:

byte[] toBytes(int i) {
  byte[] result = new byte[4];

  result[0] = (byte) (i >> 24);
  result[1] = (byte) (i >> 16);
  result[2] = (byte) (i >> 8);
  result[3] = (byte) (i);

  return result;
}
Nach dem Login kopieren

Die ByteBuffer-Klasse stellt optimierte Methoden für solche Aufgaben bereit. Insbesondere definiert java.nio.Bits Hilfsmethoden, die von ByteBuffer.putInt() verwendet werden:

private static byte int3(int x) { return (byte)(x >> 24); }
private static byte int2(int x) { return (byte)(x >> 16); }
private static byte int1(int x) { return (byte)(x >>  8); }
private static byte int0(int x) { return (byte)(x >>  0); }
Nach dem Login kopieren

Diese Methoden dienen dazu, einzelne Bytes effizient aus einer Ganzzahl zu extrahieren.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Ganzzahl in ein Byte-Array in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage