Wie viele Bytes belegt char in Java?
Ein Zeichen in Java nimmt 2 Bytes ein . Java verwendet Unicode, 2 Bytes zur Darstellung eines Zeichens. Eine Zahl, ein englisches oder chinesisches Zeichen ist ein Zeichen, aber wenn es um Zahlen und Englisch geht, ist das erste der beiden gespeicherten Bytes 0, was eine Platzverschwendung darstellt. Das Speichern chinesischer Zeichen nimmt 2 Bytes in Anspruch.
1: „Byte“ ist Byte, „Bit“ ist Bit;
2: 1 Byte = 8 Bit;
public class Test { public static void main(String[] args) { String str = "中"; char x = '中'; byte[] bytes = null; byte[] bytes1 = null; try { bytes = str.getBytes("utf-8"); bytes1 = charToByte(x); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("bytes 大小:" + bytes.length); System.out.println("bytes1大小:" + bytes1.length); } public static byte[] charToByte(char c) { byte[] b = new byte[2]; b[0] = (byte)((c & 0xFF00) >> 8); b[1] = (byte)(c & 0xFF); return b; } }Laufergebnis:
bytes 大小:3 bytes1大小:2Java verwendet Unicode zur Darstellung von Zeichen. Der Unicode des chinesischen Schriftzeichens „中“ beträgt 2 Bytes. Die Methode „String.getBytes(encoding)“ besteht darin, die Byte-Array-Darstellung der angegebenen Codierung zu erhalten. Normalerweise beträgt gbk/gb2312 2 Bytes und utf-8 3 Bytes. Wenn keine Kodierung angegeben ist, wird die Standardkodierung des Systems verwendet. php Chinesische Website, eine große Anzahl kostenloser
Java-Einführungs-Tutorials
, willkommen zum Online-Lernen!Das obige ist der detaillierte Inhalt vonWie viele Bytes belegt char in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!