我刚刚开始使用 kotlin,所以我确信有一种简单的方法可以做到这一点,但我没有看到。我想使用代码点将 a 拆分为单长度子字符串。在 Java 8 中,这有效:
public class UtfSplit {
static String [] utf8Split (String str) {
int [] codepoints = str.codePoints().toArray();
String [] rv = new String[codepoints.length];
for (int i = 0; i < codepoints.length; i++)
rv[i] = new String(codepoints, i, 1);
return rv;
}
public static void main(String [] args) {
String test = "こんにちは皆さん";
System.out.println("Test string:" + test);
StringBuilder sb = new StringBuilder("Result:");
for(String s : utf8Split(test))
sb.append(s).append(", ");
System.out.println(sb.toString());
}
}
输出是:
Test string:こんにちは皆さん
Result:こ, ん, に, ち, は, 皆, さ, ん,
我将如何在 kotlin 中做到这一点?我可以到达代码点,尽管它很笨拙,而且我确信我做错了。但我无法从代码点返回字符串。整个字符串/字符界面对我来说似乎不同,我只是不明白。
谢谢史蒂夫·S。