这篇文章运用简单易懂的例子给大家介绍java如何判断字符是否是汉字,代码非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

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]"); }}

输出结果:

falsefalsefalsetrue

Java用的是Unicode 编码char 型变量的范围是0-65535 无符号的值,可以表示 65536个字符,基本上地球上的字符可被全部包括了

汉字基本集中在[19968,40869]之间,共有20901个汉字

unicode编码范围:

汉字:[0x4e00,0x9fa5](或十进制[19968,40869])

双字节字符编码范围

1.GBK (GB2312/GB18030)

/x00-/xff GBK双字节编码范围

/x20-/x7f ASCII

/xa1-/xff 中文 gb2312

/x80-/xff 中文 gbk

2.UTF-8 (Unicode)

/u4e00-/u9fa5 (中文)

关于java判断字符是否是汉字的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。