equalsIgnoreCase()
是 Java 中 String
類的一個方法,用于比較兩個字符串是否相等,同時忽略大小寫
equalsIgnoreCase()
替代 equals()
:當你需要比較兩個字符串是否相等,同時希望忽略大小寫時,可以使用 equalsIgnoreCase()
方法。這樣可以避免在比較之前將字符串轉換為統一的大小寫格式,從而提高代碼的可讀性和效率。String str1 = "Hello";
String str2 = "hello";
boolean result = str1.equalsIgnoreCase(str2); // true
equalsIgnoreCase()
方法之前,確保傳入的參數不為 null
。如果傳入的參數可能為 null
,可以使用 Objects.equals()
方法,它會自動處理空值情況。String str1 = "Hello";
String str2 = null;
boolean result = Objects.equals(str1, str2); // false
equals()
方法。但請注意,equals()
方法是區分大小寫的。String str1 = "Hello";
String str2 = "hello";
boolean result = str1.equals(str2); // false
false
,避免進行耗時的字符比較操作。public static boolean equalsIgnoreCase(String s1, String s2) {
if (s1 == null || s2 == null) {
return s1 == s2;
}
if (s1.length() != s2.length()) {
return false;
}
return s1.equalsIgnoreCase(s2);
}
Pattern
和 Matcher
類可以幫助你實現這一目標。String pattern = "^h.*o$"; // 以 h 開頭,以 o 結尾的字符串
String input = "Hello";
boolean result = Pattern.compile(pattern, Pattern.CASE_INSENSITIVE).matcher(input).matches(); // true
總之,equalsIgnoreCase()
方法是一個非常實用的工具,可以幫助你在各種場景下比較字符串。在使用時,請確保了解其特性并根據實際需求選擇合適的比較方法。