You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java中如何获取特定字符(码点)对应的Unicode块或脚本枚举对象?

获取字符对应的UnicodeBlock和UnicodeScript枚举对象

获取Character.UnicodeBlock

要获取特定字符对应的Character.UnicodeBlock枚举实例,直接调用枚举类自身的of方法即可,该方法支持传入char类型字符或int类型的Unicode码点:

// 传入char类型字符
char ch = '中';
Character.UnicodeBlock block = Character.UnicodeBlock.of(ch);
System.out.println(block); // 输出 CJK_UNIFIED_IDEOGRAPHS

// 传入码点(适配补充平面字符)
int emojiCodePoint = 0x1F600; // 笑脸emoji
Character.UnicodeBlock emojiBlock = Character.UnicodeBlock.of(emojiCodePoint);
System.out.println(emojiBlock); // 输出 EMOTICONS

此外Character类也提供了getUnicodeBlock方法可实现相同功能,比如Character.getUnicodeBlock(ch),但更推荐使用枚举自身的of方法,风格更统一。

获取Character.UnicodeScript

针对Character.UnicodeScript,同样通过枚举的of方法获取(Java 7及以上版本支持):

// 处理普通字符
char devaChar = 'अ'; // 梵文字符
Character.UnicodeScript script = Character.UnicodeScript.of(devaChar);
System.out.println(script); // 输出 DEVANAGARI

// 处理码点
int devaCodePoint = 0x0905;
Character.UnicodeScript devaScript = Character.UnicodeScript.of(devaCodePoint);
System.out.println(devaScript); // 输出 DEVANAGARI

内容的提问来源于stack exchange,提问作者Basil Bourque

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 23:14:51