Java中有什么办法可以让我获得与任何字符均等的Unicode?例如
假设有一个方法getUnicode(char c)。呼叫getUnicode('÷')应该返回\u00f7。
getUnicode(char c)
getUnicode('÷')
\u00f7
你可以使用以下一种衬里对任何Java字符进行处理:
System.out.println( "\\u" + Integer.toHexString('÷' | 0x10000).substring(1) );
但这仅适用于Unicode 3.0以下的Unicode字符,这就是为什么我建议你可以对任何Java字符都使用它。
由于Java是在Unicode 3.1出现之前进行设计的,因此Java的char原语不足以表示Unicode 3.1及更高版本:不再存在“将一个Unicode字符映射到一个Java char”的映射(而是使用了骇人听闻的技巧)。
因此,你实际上必须在这里检查你的要求:是否需要支持Java字符或任何可能的Unicode字符?