Der char-Typ belegt in Java 2 Bytes. Wenn der ASCII-Kodierungssatz verwendet wird, belegt char ein Byte belegt zwei Bytes.
char am Anfang des Designs Es wird zum Speichern von Zeichen verwendet, aber es gibt so viele Zeichen auf der Welt, dass nur 256 gespeichert werden können, was offensichtlich ungeeignet ist. Wenn es jedoch zwei Bytes gibt, dann 2 ^ 16 (65536). ), stimmt diese Zahl mit der Anzahl der Sprachzeichen in den meisten Ländern überein, daher verwendet das Java-Team Unicode als Codierung und ein Zeichen wird als 2 Bytes gespeichert.
Aber Unicode ist nur ein Standard und die spezifische Implementierung umfasst immer noch Codierungen wie UTF-8 oder UTF-16.
Ist Javas Zeichen unbedingt 2 Bytes groß?
Nicht unbedingt, es hat etwas mit dem Zeichensatz zu tun, den wir verwenden. Wenn wir den ASCII-Kodierungssatz verwenden, belegt char ein Byte. Was ist, wenn wir das UTF-8-Kodierungsformat verwenden? UTF-8 ist eine Codierung mit variabler Länge, und die Länge der Codierung ist dynamisch und daher nicht unbedingt sicher.
Kann char chinesische Schriftzeichen speichern?Dieses Problem hängt immer noch vom verwendeten Codierungssatz ab. Wenn Sie ASCII verwenden, kann es definitiv nicht gespeichert werden.
Zusammenfassung
Die Länge vonchar und ob es chinesische Zeichen speichern kann, hängt vom Codierungsformat ab. Für die plattformübergreifende Codierung beim Codieren sollten wir beim Codieren und Decodieren das entsprechende Format festlegen, um Ausnahmen durch Codierung und Decodierung zu vermeiden.
Verwandte Lernempfehlungen: Java-Grundlagen-Tutorial
Das obige ist der detaillierte Inhalt vonWie viele Bytes belegt der Typ char in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!