在Java中,Unicode字符可以使用
UTF-16
编码的Unicode转义序列来表示。以下是一个表示BMP平面字符的示例。char ch = '\u00A5'; // '¥'
代理对是否可用于非BMP平面字符?
char ch4 = '\uD800\uDC00'; //Invalid character constant
如何使用Java语法表示非BMP平面字符?
char
不能保存Unicode代码点。需要使用Javaint
来保存。这是因为Unicode代码点可以高达0x10FFFF,但Javachar
只能保存最大值为0xFFFF的值。Java中的char
并不是一个字符。 - tchrist