java可以使用正则表达式判断
/** * 判断一个字符是否是汉字 * PS:中文汉字的编码范围:[\u4e00-\u9fa5] * * @param c 需要判断的字符 * @return 是汉字(true), 不是汉字(false) */ public static boolean isChineseChar(char c) { return String.valueOf(c).matches("[\u4e00-\u9fa5]"); }
登录后复制
示例:
/** * 判断一个字符是否是汉字 * * @author Yawei Xi * @date 2018-8-20 */ public class Test { public static void main(String[] args) { char a = ' '; char b = 0; char c = 'a'; char d = '中'; System.out.println(isChineseChar(a)); System.out.println(isChineseChar(b)); System.out.println(isChineseChar(c)); System.out.println(isChineseChar(d)); } /** * 判断一个字符是否是汉字 * PS:中文汉字的编码范围:[\u4e00-\u9fa5] * * @param c 需要判断的字符 * @return 是汉字(true), 不是汉字(false) */ public static boolean isChineseChar(char c) { return String.valueOf(c).matches("[\u4e00-\u9fa5]"); } }
登录后复制
测试结果:
false false false true
登录后复制
汉字基本集中在[19968,40869]之间,共有20901个汉字
unicode编码范围:
汉字:[0x4e00,0x9fa5](或十进制[19968,40869])
数字:[0x30,0x39](或十进制[48, 57])
小写字母:[0x61,0x7a](或十进制[97, 122])
大写字母:[0x41,0x5a](或十进制[65, 90])
更多java知识请关注java基础教程。
以上就是java判断字符是否是汉字的详细内容,更多请关注Work网其它相关文章!