我正在尝试将“o͝”(一个语音字符)分配给Java程序中的一个字符,但是我收到错误“无效的字符常量”。我的文件使用UTF-8和其他语音字符工作正常,但不是这个。看起来这个角色实际上是两个(一个'o'和一个连字或类似的东西),但我不能打破它正在形成的部分。
代码示例:
Character test = 'o͝';
任何帮助都将不胜感激。
答案 0 :(得分:4)
该字形被称为“带有combining double breve的小写字母o”,并且可以在源代码中写为;
String a = "\u006f\u035d";
由于它是一个组合字符(即两个字符),因此无法将结果值分配给单个Java字符,您需要使用字符串。
答案 1 :(得分:2)
您可以尝试查看字符表中字符的编号并将其分配给变量,例如:
char a = '\u0040';
答案 2 :(得分:0)
正如已经说过的,你不应该硬编码这样的字符,你应该使用这里找到的unicode点值:
你想要的实际上涉及“结合角色”:
http://en.wikipedia.org/wiki/Combining_character
组合变音标记为0x0300 - 0x036f。因此,例如,要创建您想要的角色(双精灵'o'),请使用:
String o_doubleBreve = "o\u035d";
打印为o͝
答案 3 :(得分:0)