
Java用的是Unicode 编码char 型变量的局限是0-65535 无标记的值,能够示意 65536个字符,基础上地球上的字符可被悉数包含了
汉字基础集合在[19968,40869]之间,共有20901个汉字。
unicode编码局限:
汉字:[0x4e00,0x9fa5](或十进制[19968,40869])
数字:[0x30,0x39](或十进制[48, 57])
小写字母:[0x61,0x7a](或十进制[97, 122])
大写字母:[0x41,0x5a](或十进制[65, 90])
第一种 推断是不是存在汉字
public boolean checkcountname(String countname) { Pattern p = Pattern.compile("[\u4e00-\u9fa5]"); Matcher m = p.matcher(countname); if (m.find()) { return true; } return false; }
用正则表达式去婚配
第二种 推断全部字符串都由汉字构成
public boolean checkname(String name) { int n = 0; for(int i = 0; i < name.length(); i++) { n = (int)name.charAt(i); if(!(19968 <= n && n <40869)) { return false; } } return true; }
更多java学问请关注java基础教程。
以上就是java怎样推断字符串是不是中文的细致内容,更多请关注ki4网别的相干文章!