原文: https://howtodoinjava.com/java/string/string-equalsignorecase-method/

Java 字符串equalsIgnoreCase()方法用于将字符串与方法参数对象进行比较,而忽略大小写考虑。

equalsIgnoreCase()方法中,如果两个字符串长度相同,并且忽略大小写,则两个字符串中的对应字符相等,则认为它们相等。

1. Java String.equalsIgnoreCase()方法

  1. /**
  2. * @param anObject - The object to compare
  3. * @return true - if the non-null argument string represents the same sequence of characters to this string
  4. * false - in all other cases
  5. */
  6. public boolean equalsIgnoreCase(String anotherString) {
  7. return (this == anotherString) ? true
  8. : (anotherString != null)
  9. && (anotherString.value.length == value.length)
  10. && regionMatches(true, 0, anotherString, 0, value.length);
  11. }
  1. Java equalsIgnoreCase()方法用于以不区分大小写的方式检查相等的字符串。
  2. 不要使用'=='运算符。 它检查对象引用,这在大多数情况下是不希望的。
  3. 允许将null传递给方法。 它将返回false

2. Java String.equalsIgnoreCase()示例

检查两个字符串是否相等的 Java 程序(不区分大小写)。 请注意,equals()equalsIgnoreCase()方法的行为方式相同,只是后者不区分大小写

  1. public static void main(String[] args)
  2. {
  3. String blogName = "howtodoinjava.com";
  4. String authorName = "Lokesh gupta";
  5. //1 - case-insensitive comparison
  6. isEqualString = blogName.equalsIgnoreCase("HOWTODOINJAVA.COM"); //true
  7. //2 - case-insensitive comparison
  8. isEqualString = blogName.equalsIgnoreCase("howtodoinjava.com"); //true
  9. //3 - check two strings for same character sequence ignoring case
  10. boolean isEqualString = blogName.equalsIgnoreCase(authorName); //false
  11. //4 - null is allowed
  12. isEqualString = blogName.equalsIgnoreCase(null); //false
  13. }
  14. }

3. Java String.equals()示例

Java 程序使用equals方法检查两个字符串是否相等(区分大小写)。

  1. public class Main
  2. {
  3. public static void main(String[] args)
  4. {
  5. String blogName = "howtodoinjava.com";
  6. String authorName = "Lokesh gupta";
  7. //1 - check two strings for same character sequence
  8. boolean isEqualString = blogName.equals(authorName); //false
  9. //2
  10. isEqualString = blogName.equals("howtodoinjava.com"); //true
  11. //3
  12. isEqualString = blogName.equals(null); //false
  13. //4 - case-sensitive
  14. isEqualString = blogName.equals("HOWTODOINJAVA.COM"); //false
  15. }
  16. }

4. equalsequalsIgnoreCase之间的区别

显然,在执行字符串比较时,Java 中equalsequalsIgnoreCase之间的差异是区分大小写。

  1. equals()方法进行区分大小写的比较。
  2. equalsIgnoreCase()方法进行不区分大小写的比较。

学习愉快!

参考:String Java 文档