什么是Java相当于javascript的:
String.fromCharCode(n1, n2, ..., nX)
Run Code Online (Sandbox Code Playgroud)
Bal*_*usC 19
那将是如下:
public static String fromCharCode(int... codePoints) {
StringBuilder builder = new StringBuilder(codePoints.length);
for (int codePoint : codePoints) {
builder.append(Character.toChars(codePoint));
}
return builder.toString();
}
Run Code Online (Sandbox Code Playgroud)
请注意,char无法保证转换为有效,因为代码点值可能超过char(65535)的上限.它char是在黑暗的Java时代建立的,当时Unicode 3.1还没有超过65535个字符.
更新:String实际上有一个构造函数采用int[](从Java 1.5开始引入,从头顶不知道它),它正确地处理了这个问题.以上内容可简化如下:
public static String fromCharCode(int... codePoints) {
return new String(codePoints, 0, codePoints.length);
}
Run Code Online (Sandbox Code Playgroud)