Java中的汉字Unicode码在 \u4E00-\u9FA5\uf900-\ufa2d 范围内,所以
1可以遍历字符串中每个char比较是否在这个范围内即可
2利用正则表达
public static void judgeChinese1(String str) {
String regEx = "[\u4E00-\u9FA5\uf900-\ufa2d]";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(str);
while (m.find()) {
System.out.println(m.group());
}
}
3利用字节编辑,在GBK编码中,一个汉字占两个字节,在UTF-8编码中,一个汉字占三个字节,而数字英文,都是一个字节
public static boolean judgeChinese2(String str) {
return str.getBytes().length == str.length();
}