Java是否使用一字节长的ASCII码集来表示字符?

Java是否使用一字节长的ASCII码集来表示字符?,java,ascii,Java,Ascii,我只是从Java开始,试图理解基本概念。我被问到一个问题,“Java是否使用一字节长的ASCII码集来表示字符?” 我知道Java使用包含ASCII的Unicode,但是ASCII是一个字节长吗?ASCII是一种7位表示,所以是的,每个ASCII字符都可以放入一个字节中 但是,Javachar是16位的。这是一个UTF-16代码单元。因此,如果您有一个包含100个字符的char数组,即使每个字符都是ASCII字符,也需要200字节(加上对象开销)。发件人: Java编程语言使用UTF-16编码以

我只是从Java开始,试图理解基本概念。我被问到一个问题,“Java是否使用一字节长的ASCII码集来表示字符?”


我知道Java使用包含ASCII的Unicode,但是ASCII是一个字节长吗?

ASCII是一种7位表示,所以是的,每个ASCII字符都可以放入一个
字节中

但是,Java
char
是16位的。这是一个UTF-16代码单元。因此,如果您有一个包含100个字符的
char
数组,即使每个字符都是ASCII字符,也需要200字节(加上对象开销)。发件人:

Java编程语言使用UTF-16编码以16位代码单元的序列表示文本


在这类问题中,你必须尽可能精确。您从什么意义上知道Java“使用Unicode”?Java有一个char原语类型和一个String类,Java源代码元素由指定的Unicode字符组成,等等。