-3

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

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

4

1 回答 1

4

ASCII 是 7 位表示,所以是的,每个 ASCII 字符都可以放入byte.

但是,Javachar是 16 位的。它是一个 UTF-16 编码单元。因此,如果您有一个char100 个字符的数组,即使每个字符都只是 ASCII,也将需要 200 个字节(加上对象开销)。从JLS 的第 3.1 节

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

于 2013-10-01T20:58:07.100 回答