# 统一

> 原文： [https://docs.oracle.com/javase/tutorial/i18n/text/unicode.html](https://docs.oracle.com/javase/tutorial/i18n/text/unicode.html)

_Unicode_ 是一种计算行业标准，旨在对全世界书面语言中使用的字符进行一致且唯一的编码。 Unicode 标准使用十六进制表示字符。例如，值 0x0041 表示拉丁字符 A. Unicode 标准最初使用 16 位来设计字符，因为主要计算机是 16 位 PC。

创建 Java 语言规范时，接受 Unicode 标准，并将`char`原始定义为 16 位数据类型，十六进制范围内的字符从 0x0000 到 0xFFFF。

由于 16 位编码支持 2 &lt;sup&gt;16&lt;/sup&gt; （65,536）字符，这不足以定义全世界使用的所有字符，因此 Unicode 标准扩展为 0x10FFFF，支持超过一百万个字符。 Java 编程语言中字符的定义无法从 16 位更改为 32 位，而不会导致数百万 Java 应用程序无法正常运行。为了纠正定义，开发了一种方案来处理无法以 16 位编码的字符。

值超出 16 位范围且在 0x10000 到 0x10FFFF 范围内的字符称为 _ 补充字符 _，并被定义为一对`char`值。

本课包括以下部分：

*   [术语](terminology.html) - 解释代码点和其他术语。
*   [辅助字符作为代理](supplementaryChars.html) - 16 位代理用于实现补充字符，这些字符不能作为单个原始`char`数据类型实现。
*   [字符和字符串 API](characterClass.html) - `Character`，`String`和相关类的相关 API 列表。
*   [样本用法](usage.html) - 提供了几个有用的代码片段。
*   [设计注意事项](design.html) - 请注意设计注意事项，以确保您的应用程序可以使用任何语言脚本。
*   [更多信息](info.html) - 提供了更多资源的列表。