Home > Java > JavaBase > body text

How many bytes does java char occupy?

青灯夜游
Release: 2020-08-22 14:52:12
Original
3359 people have browsed it

In java, char occupies 2 bytes. In Java, as long as it is a character, whether it is a number, English or Chinese character, it takes up two bytes. Reason: Java compiler uses Unicode encoding by default, so 2 bytes can represent all characters.

How many bytes does java char occupy?

Related recommendations: "Java Video Tutorial"

1: "Byte" is byte, "Bit" is bit;

2: 1 byte = 8 bit;

char is 2 bytes in java. Java uses Unicode, 2 bytes (16 bits) to represent a character.

The example code is as follows:

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; 
    }
}
Copy after login

Running result:

bytes 大小:3
bytes1大小:2
Copy after login

Java uses unicode to represent characters. The unicode of the Chinese character "中" is 2 bytes.

The String.getBytes(encoding) method is to obtain the byte array representation of the specified encoding.

Usually gbk/gb2312 is 2 bytes and utf-8 is 3 bytes.

If encoding is not specified, the system default encoding will be used.

For more related programming knowledge, please visit: Programming Learning Website! !

The above is the detailed content of How many bytes does java char occupy?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template