当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java String compareTo()用法及代码示例


在本教程中,我们将借助示例了解 Java String compareTo() 方法。

compareTo() 方法按字典顺序(按字典顺序)比较两个字符串。比较基于字符串中每个字符的 Unicode 值。

示例

class Main {
  public static void main(String[] args) {
    String str1 = "Learn Java";
    String str2 = "Learn Kolin";
    int result;

    // comparing str1 with str2
    result = str1.compareTo(str2);

    System.out.println(result);
  }
}

// Output: -1

用法:

用法:

string.compareTo(String str)

这里,stringString 类的对象。

参数:

compareTo() 方法采用单个参数。

  • str- 要比较的字符串

返回:

  • 返回 0如果字符串相等
  • 返回一个负整数如果string出现在str字典顺序中的参数
  • 返回一个正整数如果string紧随其后str字典顺序中的参数

示例:Java 字符串 compareTo()

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.compareTo(str2);

    System.out.println(result);  // 0

    // comparing str1 with str3
    result = str1.compareTo(str3);

    System.out.println(result);  // -1

    // comparing str3 with str1
    result = str3.compareTo(str1);

    System.out.println(result);  // 1
  }
}

这里,

  • str1str2 相等。因此,str1.compareTo(str2) 返回 0。
  • str1 在字典顺序中位于 str3 之前。因此,str1.compareTo(str3) 返回负数,str3.compareTo(str1) 返回正数。

示例 2:检查两个字符串是否相等

class Main {
  public static void main(String[] args) {
    String str1 = "Learn Python";
    String str2 = "Learn Java";
        
    // if str1 and str2 are equal, the result is 0
    if (str1.compareTo(str2) == 0) {

      System.out.println("str1 and str2 are equal");
    }
    else {
      System.out.println("str1 and str2 are not equal");
    }
  }
}

输出

str1 and str2 are not equal

示例 3:compareTo() 带大小写

compareTo() 方法考虑了字母大小写(大写和小写)。

class Main {
  public static void main(String[] args) {
    String str1 = "Learn Java";
    String str2 = "learn Java";
    int result;

    // comparing str1 with str2
    result = str1.compareTo(str2);

    System.out.println(result);  // -32
  }
}

什么时候"Learn Java"被比作"learn Java",我们没有得到0.这是因为compareTo()考虑字母大小写。

注意:

  • 如果您需要比较两个字符串而忽略大小写差异,请使用Java String compareToIgnoreCase() 方法。
  • 如果将null 传递给compareTo() 方法,则会收到错误消息。

相关用法


注:本文由纯净天空筛选整理自 Java String compareTo()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。