鉴于以下表情符号来自 http://unicodey.com/emoji-data/table.htm :
名称:区域指示符号字母ma
unicode 值:U+1F1F2 U+1F1E6
它的代码点值应该是多少?
示例:
感叹号的代码点值为 33,即 0x21 到基数 10 = 33
scala> "\u0021"
res11: String = !
scala> "\u0021".codePoints.toArray
res12: Array[Int] = Array(33)
因此,在这种情况下,我可以简单地将 \u0021
放入字符串中。但是,如何创建一个String
来包含区域指示符号字母ma
?
最佳答案
以下是构造字符串的方法:
scala> val points = Array(0x1F1F2, 0x1F1E6)
points: Array[Int] = Array(127474, 127462)
scala> val string = new String(points, 0, points.length)
string: String = 🇲🇦
<小时/>
编辑:以下部分是我的原始答案,希望对某人有所帮助
我认为您稍微误解了“表情符号”的工作原理。如果您将您感兴趣的 :flag-ma:
与 :flag-mc:
您会注意到 unicode 的第一部分是相同的 U+1F1F2
,它对应于字母“m”。这意味着您实际上不是在处理单个表情符号,它实际上是两个单独的表情符号,当按一定顺序排列时,它们会显示为给定的标志。
作为示例,以下是 GB 表情符号 (U+1F1EC U+1F1E7
) 在某些平台上的呈现方式(请注意它并不总是一个标志):
关于java - 将两个代码点表情符号放入字符串中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40711387/