📜  Java字符串compareToIgnoreCase()

📅  最后修改于: 2020-09-27 02:30:46             🧑  作者: Mango

Java String compareTo()方法按字典顺序比较两个字符串 (按字典顺序),而忽略大小写差异。

字符串 compareToIgnoreCase()方法的语法为:

string.compareToIgnoreCase(String str)

在这里, 字符串String类的对象。


compareToIgnoreCase()参数

字符串 compareToIgnoreCase()方法采用单个参数。

  • str-要比较的字符串

compareToIgnoreCase()返回值
  • 如果字符串相等,则返回0 ,忽略大小写
  • 如果字符串按字典顺序位于str参数之前,则返回负整数
  • 如果字符串在字典顺序中位于str参数之前,则返回正整数

示例:Java字符串compareToIgnoreCase()
class Main {
    public static void main(String[] args) {
        String str1 = "Learn Java";
        String str2 = "learn java";
        String str3 = "Learn Kolin";
        int result;

        // comparing str1 with str2
        result = str1.compareToIgnoreCase(str2);
        System.out.println(result); // 0

        // comparing str1 with str3
        result = str1.compareToIgnoreCase(str3);
        System.out.println(result); // -1

        // comparing str3 with str1
        result = str3.compareToIgnoreCase(str1);
        System.out.println(result); // 1
    }
}

这里,

  • 如果不考虑大小写差异,则str1str2相等。因此, str1.compareToIgnoreCase(str2)返回0。
  • 按字典顺序, str1str3之前。因此, str1.compareToIgnoreCase(str3)返回负,而str3.compareToIgnoreCase(str1)返回正。

示例2:检查两个字符串是否相等
class Main {
    public static void main(String[] args) {
        String str1 = "LEARN JAVA";
        String str2 = "Learn Java";
        
        // if str1 and str2 are equal (ignoring case differences),
        // the result is 0
        if (str1.compareToIgnoreCase(str2) == 0) {
            System.out.println("str1 and str2 are equal");
        }
        else {
            System.out.println("str1 and str2 are not equal");
        }
    }
}

输出

str1 and str2 not equal

如果需要比较考虑大小写差异的两个字符串 ,请使用其中一个

  • Java字符串CompareTo()
  • Java字符串equals()