Zählen von String-Bytes in Java
In Java sind Strings eine Sammlung von Zeichen, die eine variable Anzahl von Bytes enthalten können. Die Anzahl der Bytes, die eine Zeichenfolge einnimmt, hängt vom Zeichensatz ab, mit dem sie codiert wurde.
Ermitteln der Anzahl der codierten Bytes
Um die Anzahl der Bytes in einer Zeichenfolge zu ermitteln, Sie können es mit der Methode getBytes() in ein Byte-Array konvertieren. Diese Methode verwendet ein Codierungsformat als Argument und gibt ein Byte-Array zurück, das mit der codierten Zeichenfolge gefüllt ist. Die Länge des Arrays stellt die Anzahl der Bytes in der codierten Zeichenfolge dar.
Beispiel:
<code class="java">String string = "Hello World"; // Get UTF-8 encoded byte count byte[] utf8Bytes = string.getBytes("UTF-8"); System.out.println(utf8Bytes.length); // prints 11 // Get UTF-16 encoded byte count byte[] utf16Bytes = string.getBytes("UTF-16"); System.out.println(utf16Bytes.length); // prints 24 // Get UTF-32 encoded byte count byte[] utf32Bytes = string.getBytes("UTF-32"); System.out.println(utf32Bytes.length); // prints 44</code>
Codierungsvariationen
Wie Sie dem Beispiel entnehmen können, kann selbst eine ASCII-Zeichenfolge wie „Hello World“ je nach verwendeter Kodierung unterschiedliche Bytezahlen haben.
Zeichensätze
Das ist entscheidend um beim Codieren einer Zeichenfolge den entsprechenden Zeichensatz auszuwählen. Verschiedene Zeichensätze verwenden unterschiedliche Methoden, um Zeichen als Bytes darzustellen, was zu unterschiedlichen Bytezahlen führt.
Standardzeichensatz
Wenn Sie keinen Zeichensatz angeben, Java verwendet den Standardzeichensatz der Plattform. Es ist jedoch ratsam, sich nicht auf Standardwerte zu verlassen und den Zeichensatz explizit anzugeben, um konsistente Ergebnisse zu gewährleisten.
Das obige ist der detaillierte Inhalt vonWie viele Bytes belegt ein Java-String?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!