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基礎教學。
以上是java中判斷字串是否是中文的詳細內容。更多資訊請關注PHP中文網其他相關文章!