在 Java 中,可通过以下方法将字符串中的汉字提取为数组:使用正则表达式;使用 Unicode 码;使用第三方库;手动遍历字符串。选用方法应根据具体需求而定。
如何将 Java 字符串中的汉字提取为数组
在 Java 中,可以使用以下方法将字符串中的汉字提取为数组:
1. 使用正则表达式:
String str = "你好,世界";
String[] hanziArray = str.split("[^\\u4E00-\\u9FA5]");2. 使用 Unicode 码:
String str = "你好,世界"; ListhanziLi st = new ArrayList<>(); for (int i = 0; i < str.length(); i++) { int codePoint = str.codePointAt(i); if (codePoint >= 0x4E00 && codePoint <= 0x9FA5) { hanziList.add(str.substring(i, i + 1)); } } String[] hanziArray = hanziList.toArray(new String[0]);
3. 使用第三方库:
可以使用 Apache Commons Lang 库中的 CharUtils.toList 方法:
String str = "你好,世界";
String[] hanziArray = CharUtils.toList(str).stream()
.filter(ch -> ch >= 0x4E00 && ch <= 0x9FA5)
.map(ch -> String.valueOf(ch))
.toArray(String[]::new);4. 手动遍历字符串:
String str = "你好,世界";
String[] hanziArray = new String[str.length()];
int count = 0;
for (int i = 0; i < str.length(); i++) {
int codePoint = str.codePointAt(i);
if (codePoint >= 0x4E00 && codePoint <= 0x9FA5) {
hanziArray[count++] = str.substring(i, i + 1);
}
}根据实际需求选择合适的方法即可。









