gpt4 book ai didi

java - 如何在 Java 中编写 unicode 十字符号?

转载 作者:IT老高 更新时间:2023-10-28 20:20:55 24 4
gpt4 key购买 nike

我正在尝试用 Java 编写这个 unicode 十字符号 (𐀵):

class A {
public static void main(String[] args) {
System.out.println("\u2300");
System.out.println("\u10035");
}
}

我可以在 o 中加上一行 () 就好了,但是十字符号没有出现,而是只打印数字 5:

# javac A.java && java A

ဃ5

为什么?

最佳答案

您正在寻找 Basic Multilingual Plane 之外的 U+10035 .这意味着你不能使用 \u指定值,因为它只处理 U+0000 到 U+FFFF - 总是\u 之后正好有四个十六进制数字.所以目前你有 U+1003 ( "MYANMAR LETTER GHA" ) 后跟 '5'。

不幸的是,Java 没有提供字符串文字形式,这使得 BMP 之外的字符易于表达。将它包含在文字中(但仍为 ASCII 格式)的唯一方法是使用 UTF-16 surrogate pair形式:

String cross = "\ud800\udc35";

或者,您可以使用 32 位代码点形式作为 int :

String cross = new String(new int[] { 0x10035 }, 0, 1);

(这两个字符串相等。)

话虽如此,您的控制台仍需要支持该角色 - 您需要尝试一下以了解它是否支持。

关于java - 如何在 Java 中编写 unicode 十字符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16616162/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com