java判断字符是否是汉字-LMLPHP

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网其它相关文章!

09-13 01:38