Rumah  >  Artikel  >  Java  >  java中判断字符串是否是中文

java中判断字符串是否是中文

尚
asal
2019-11-22 17:12:542605semak imbas

java中判断字符串是否是中文

Java用的是Unicode 编码char 型变量的范围是0-65535 无符号的值,可以表示 65536个字符,基本上地球上的字符可被全部包括了,实际中,我们希望判断一个字符是不是汉字,或者一个字符串里的字符是否有汉字来满足业务上的需求,String类中有个这样的方法可得到其字符长度length() ,看下面例子, 

String s1 = "我是中国人";  
String s2 = "imchinese";  
String s3 = "im中国人";  
System.out.println(s1+":"+new String(s1).length());  
System.out.println(s2+":"+new String(s2).length());   
System.out.println(s3+":"+new String(s3).length());

OUTPUT: 

我是中国人:5 

imchinese:9 

im中国人:5 

java判断字符串是否为中文:

/**
 * 判断该字符串是否为中文
 * @param string
 * @return
 */
public static boolean isChinese(String string){
    int n = 0;
    for(int i = 0; i < string.length(); i++) {
        n = (int)string.charAt(i);
        if(!(19968 <= n && n <40869)) {
            return false;
        }
    }
    return true;
}

unicode编码范围:

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

数字:[0x30,0x39](或十进制[48, 57])

小写字母:[0x61,0x7a](或十进制[97, 122])

大写字母:[0x41,0x5a](或十进制[65, 90])

unicode中文范围

汉字编码范围:\u4e00-\u9FA5

双字节字符编码范围:\u0391-\uFFE5

更多java知识请关注java基础教程

Atas ialah kandungan terperinci java中判断字符串是否是中文. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn