Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中将UTF-16字符代码(数字)转换为字符串_Java_Utf 16 - Fatal编程技术网

在Java中将UTF-16字符代码(数字)转换为字符串

在Java中将UTF-16字符代码(数字)转换为字符串,java,utf-16,Java,Utf 16,如何简单地将UTF-16字符转换为字符串 差不多 String str = TheMagicalFunction(0x25E6); 您需要: 如果字符是整数,则将其强制转换为char 将其放入一个1元素char[]中 将其传递给字符串构造函数 所以 您需要: 如果字符是整数,则将其强制转换为char 将其放入一个1元素char[]中 将其传递给字符串构造函数 所以 您可以使用: 第一次将字符存储在变量中时,可以省略强制转换 char whiteBullet = 0x25E6; Stri

如何简单地将UTF-16字符转换为字符串

差不多

String str = TheMagicalFunction(0x25E6);
您需要:

  • 如果字符是整数,则将其强制转换为
    char
  • 将其放入一个1元素
    char[]
  • 将其传递给
    字符串
    构造函数
所以

您需要:

  • 如果字符是整数,则将其强制转换为
    char
  • 将其放入一个1元素
    char[]
  • 将其传递给
    字符串
    构造函数
所以

您可以使用:

第一次将字符存储在变量中时,可以省略强制转换

char whiteBullet = 0x25E6;
String whiteBulletString = Character.toString(whiteBullet);
…或当使用字符时,在这种情况下很容易,因为字符属于基本多语言平面(BMP):

该方法是等效的和/或具有多个重载。注意这一点:

String str = String.valueOf(0x25E6); // "9702" (decimal value)
String str2 = String.valueOf((char) 0x25E6); // "◦"
String str3 = String.valueOf('\u25E6'); // "◦"
您可以使用:

第一次将字符存储在变量中时,可以省略强制转换

char whiteBullet = 0x25E6;
String whiteBulletString = Character.toString(whiteBullet);
…或当使用字符时,在这种情况下很容易,因为字符属于基本多语言平面(BMP):

该方法是等效的和/或具有多个重载。注意这一点:

String str = String.valueOf(0x25E6); // "9702" (decimal value)
String str2 = String.valueOf((char) 0x25E6); // "◦"
String str3 = String.valueOf('\u25E6'); // "◦"

这是一个数字,不是一个字符。@MattBall如果我们想学究的话,它实际上是一个由6个字符组成的序列。有两种可能——要么提问者懒得写“由单个代码点0x25E6表示的字符”(这很公平),要么提问者不知道字符和代码点之间的区别(在这种情况下,他们可能会问)。@MattBall-Well,
char c=0x25E6;
编译得很好,将生成与
char c=0x25E6相同的字节码◦';。只是澄清一下:提问者懒得包含细节;)这是一个数字,不是一个字符。@MattBall如果我们想学究的话,它实际上是一个由6个字符组成的序列。有两种可能——要么提问者懒得写“由单个代码点0x25E6表示的字符”(这很公平)或者提问者不知道字符和代码点之间的区别(在这种情况下,他们可能会问)。@MattBall-Well,
char c=0x25E6编译良好,将生成与
char c=”相同的字节码◦';。只是澄清一下:询问者懒得包括细节;)
String str = String.valueOf(0x25E6); // "9702" (decimal value)
String str2 = String.valueOf((char) 0x25E6); // "◦"
String str3 = String.valueOf('\u25E6'); // "◦"