Heim >Java >javaLernprogramm >Wie viele Bytes belegt ein String: Ein Blick auf Java-Kodierung und Byte-Nutzung?

Wie viele Bytes belegt ein String: Ein Blick auf Java-Kodierung und Byte-Nutzung?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-27 05:08:30830Durchsuche

How Many Bytes Does a String Occupy: A Look at Java Encoding and Byte Usage?

Byte-Verwendung bei der String-Codierung

Die Berechnung der Anzahl der Bytes in einem String in Java erfordert die Berücksichtigung der verwendeten Codierungsmethode. Zeichenfolgen sind Zeichenfolgen, und die Anzahl der zu ihrer Darstellung erforderlichen Bytes hängt vom Codierungsschema ab, mit dem sie in Bytes konvertiert werden.

Bestimmen der Byteanzahl

Zu erhalten Geben Sie die Größe einer Zeichenfolge in Bytes an, konvertieren Sie sie mit der Methode getBytes() in ein Byte-Array und überprüfen Sie die Array-Größe:

<code class="java">String string = "Hello World";
byte[] utf8Bytes = string.getBytes("UTF-8");
int byteCount = utf8Bytes.length;</code>

Überlegungen zur Codierung

Die Das Kodierungsschema wirkt sich auf die Byteanzahl aus. Hier sind Beispiele für verschiedene Kodierungen, die auf dieselbe Zeichenfolge angewendet werden:

<code class="java">byte[] utf8Bytes = string.getBytes("UTF-8");  // Each char as 1 byte
byte[] utf16Bytes = string.getBytes("UTF-16"); // Each char as 2 bytes
byte[] utf32Bytes = string.getBytes("UTF-32"); // Each char as 4 bytes
byte[] isoBytes = string.getBytes("ISO-8859-1");  // Each ASCII char as 1 byte
byte[] winBytes = string.getBytes("CP1252");   // Each ASCII char as 1 byte</code>

Sonderzeichen und Multi-Byte-Kodierungen

Sogar ASCII-Zeichenfolgen können je nach unterschiedliche Byteanzahlen haben die Kodierung. In UTF-8 erfordern beispielsweise einige Zeichen möglicherweise mehrere Bytes:

<code class="java">String interesting = "\uF93D\uF936\uF949\uF942"; // Chinese ideograms
byte[] utf8Bytes = interesting.getBytes("UTF-8");  // Each char as 3 bytes</code>

Standardkodierung und explizite Spezifikation

Wenn kein Kodierungsargument angegeben wird, ist es das der Plattform Es wird der Standardzeichensatz verwendet. Es wird empfohlen, den gewünschten Zeichensatz immer explizit anzugeben, um unerwartete Ergebnisse zu vermeiden.

Das obige ist der detaillierte Inhalt vonWie viele Bytes belegt ein String: Ein Blick auf Java-Kodierung und Byte-Nutzung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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