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
Freigeben: 2024-10-27 05:08:30
Original
826 Leute haben es durchsucht

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>
Nach dem Login kopieren

Ü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>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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!

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