CodeGym /Java Blog /Toto sisi /Java 字串compareTo()方法
John Squirrels
等級 41
San Francisco

Java 字串compareTo()方法

在 Toto sisi 群組發布

什麼是 Java StringcompareTo() 方法?

如果兩個字串按字典順序相等,則java 字串類別的compareTo()方法傳回0 值。如果比較的字串按字典順序較大,則傳回正值,否則傳回負值。因此Java字串compareTo()方法用於比較兩個字串。此方法始終使用字串中每個字元的unicode值來比較它們。在比較字串時,如果其中任何一個為空,則始終傳回字串的長度。如果任何字串為空,則可能會出現兩種情況。如果第一個字串為空,則傳回負值,否則傳回正值。Java string.compareTo()方法預設區分大小寫,但我們可以使用 Java String類別的compareToIgnoreCase()方法在比較過程中忽略大小寫。如上所述,此方法也傳回負整數、0 或正整數。

句法

public int compareTo(string str)
public int compareTo(object obj)

參數

Java 字串compareTo()方法接收字串或物件作為參數,如上面的語法所示。

退貨

  1. 如果兩者按字典順序相等,則傳回 0。
  2. 如果比較的字串或物件按字典順序較大,則傳回正整數。
  3. 如果比較的其中一個按字典順序較小,則傳回負整數。

例外情況

CompareTo ()方法傳回 2 個異常。
  • ClassCastException,如果物件無法比較則傳回此異常。
  • NullPointerException,如果字串為 null,則拋出 NullPointerException 。

Java StringcompareTo() 方法範例

class Main {
  public static void main(String[] args) {
    // declaring strings to be used in this example for Java string     compareTo() method
    String str = "Java compareTo() method example";
    String str1 = "Java compareTo() method example";
    String str2 = "this is Java compareTo() method example";
    String str3 = "Java CompareTo() Method Example";
    String str4 = "a Java compareTo() method example";
    String str5 = new String("Java compareTo() method example");

    // comparing the str and str1 strings
    System.out.println(str.compareTo(str1));

    // comparing the str and str2 strings
    System.out.println(str.compareTo(str2));

    // comparing the str and str3 strings
    System.out.println(str.compareTo(str3));

    // comparing the str and str4 strings
    System.out.println(str.compareTo(str4));

    // comparing the str string and str5 string object
    System.out.println(str.compareTo(str5));
  }
}

輸出

0 -42 74 -23 0
我們知道strstr1字串按字典順序相等,因此傳回 0。在比較strstr2時,它會傳回負 42 值,因為比較的字串str會依字典順序較小,因此它是負值,並且基於unicode值t char 和J char相差 42,因此傳回 -42 值。對於其餘部分,您可以查看結果以更好地理解此方法。

空字串的範例

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring an empty string
        String str1="";
        String str2="method";

        System.out.println(str.compareTo(str1));
        System.out.println(str1.compareTo(str2));
    }
}

輸出

11 -6

忽略大寫的範例

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring the same string with uppercase letters
        String str1="COMPARETO()";

        System.out.println(str.compareTo(str1));
        System.out.println(str.compareToIgnoreCase(str1));
    }
}

輸出

32 0

結論

我們希望現在您了解什麼是Java字串compareTo()方法,以及如何實現它進行字串比較,以及它的不同使用者案例,例如空字串比較和忽略大小寫敏感。請隨意練習,並在需要更多幫助時返回。快樂學習!
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION