什麼它相當於Java中的JavaScript的的:與javascript的String.fromCharCode相當的java是什麼?
String.fromCharCode(n1, n2, ..., nX)
http://www.w3schools.com/jsref/jsref_fromCharCode.asp
什麼它相當於Java中的JavaScript的的:與javascript的String.fromCharCode相當的java是什麼?
String.fromCharCode(n1, n2, ..., nX)
http://www.w3schools.com/jsref/jsref_fromCharCode.asp
這將是類似如下:
public static String fromCharCode(int... codePoints) {
StringBuilder builder = new StringBuilder(codePoints.length);
for (int codePoint : codePoints) {
builder.append(Character.toChars(codePoint));
}
return builder.toString();
}
注意,鑄造char
不能保證,因爲上班代碼點值可能會超過char
(65535)的上限。 char
成立於黑暗Java時代,當時Unicode 3.1尚未出現,超過了65535個字符。
更新:在String
實際上已經a constructor taking an int[]
(因爲Java 1.5中引入的,不知道從頭頂),它正確地處理這個問題。如下以上可以簡化:
public static String fromCharCode(int... codePoints) {
return new String(codePoints, 0, codePoints.length);
}
+1對Unicode的完美,但我懷疑的JavaScript函數可以正確處理代碼點大於65536 – 2010-05-31 21:44:34
這似乎對於大多數工作值。我試圖: 新的字符串(新詮釋[] {141},0,1)在JavaScript打印,「?」但在java中沒有。 141是無效的嗎?我正在嘗試調試一些我從Javascript移植到Java的混淆代碼,並且對某些字符的結果不一致。 – jon077 2010-06-01 01:52:14
這取決於字符編碼,這是一個完全不同的故事。 JS環境顯然使用與Java環境不同的字符編碼。至少,以上應該可以完美地處理像UTF-8這樣的Unicode字符編碼。 – BalusC 2010-06-01 02:05:24
http://w3fools.com/ – oezi 2013-05-17 12:40:05