本文介绍了给定Unicode代码点的编号,如何获取该字符的字符串或CharSequence对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!,我看过有关在Java中获取Unicode字符的代码点编号的问题和答案。例如,问题How can I get a Unicode character’s code?。,但我想要的正好相反:给定一个整数,如何获取分配给该code point数字的该字符的文本?,char
原始数据类型没有任何用处,仅限于Unicode字符集的Basic Multilingual Plane。该平面表示以Unicode定义的大约前64,000个字符。但Unicode已经增长到现在定义的超过11.3万个字符,几乎是这个数字的两倍。分配给字符的数字范围超过一百万。基于16-bits,char
限制在64K范围内,远远不够。,Character
和String
类都提供了codePointAt
方法来检查字符并返回表示Unicode中分配的代码点的int
。我在寻找相反的东西。,给定int
的,如何获取Character
、String
的对象或CharSequence
的某个实现,以便我可以加入到其他文本?,编写字符串文字时,可以使用带反斜杠-with-u的Unicode转义序列。但我感兴趣的是使用整数变量,软编码而不是硬编码Unicode字符。,您请求的对象是Character
、String
或CharSequence
的某个实现。,Character
类实际上是legacy,只是原始char
类型的对象包装器。char
类型也是遗留的,在内部定义为限制为Unicode代码点的前64K的16位数字。Unicode现在为字符分配了两倍多的代码点,因此char
无法表示大多数字符。,因此我们不能为Basic Multilingual Plane字符集之外的字符实例化Character
对象。因此,作为一种解决办法,Character.toString( int )
会生成一个包含单个字符的String
。String
可以处理任何和所有Unicode字符,而Character
不能。,若要获取包含由int
确定的单个字符的String
对象,请将int
传递给Character.toString()
。,作为示例,我们使用FACE WITH MEDICAL MASK
,U+1F637处的表情符号(十进制:128,567)。,将int
基元变量转换为String
。,或使用文字整数。,请参阅此code run live at IdeOne.com。,上面的代码可以工作,因为String
是CharSequence
的实现。,StringBuilder
类提供了一个方法appendCodePoint
,用于通过为其分配的Unicode代码点编号添加字符。Ditto用于线程安全StringBuffer
。,这篇关于给定Unicode代码点的编号,如何获取该字符的字符串或CharSequence对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,