下面我将为你提供三种常用的方法:
方法一:使用正则表达式
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class ChineseCharacterChecker {
public static boolean containsChineseCharacters(String input) {
String regex = ".*[\\u4e00-\\u9fa5]+.*";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
return matcher.matches();
}
public static void main(String[] args) {
String str1 = "Hello, 你好吗?";
String str2 = "Hello, how are you?";
System.out.println(containsChineseCharacters(str1));
System.out.println(containsChineseCharacters(str2));
}
}
方法二:遍历字符串
public class ChineseCharacterChecker {
public static boolean containsChineseCharacters(String input) {
for (char c : input.toCharArray()) {
if (Character.UnicodeBlock.of(c) == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS) {
return true;
}
}
return false;
}
public static void main(String[] args) {
String str1 = "Hello, 你好吗?";
String str2 = "Hello, how are you?";
System.out.println(containsChineseCharacters(str1));
System.out.println(containsChineseCharacters(str2));
}
}
方法二:使用Java 8 Streams
public boolean containsChinese(String input) {
return input.chars().anyMatch(c -> Character.toString((char) c).matches("[\\u4e00-\\u9fa5]"));
}