Porovnanie reťazca Java ()

Metóda Java String compareTo () porovnáva dva reťazce lexikograficky (v poradí slovníkov). Porovnanie je založené na hodnote Unicode každého znaku v reťazcoch.

Syntax compareTo()metódy je:

 string.compareTo(String str)

Reťazec je tu predmetom Stringtriedy.

parametre compareTo ()

compareTo()Metóda preberá jeden parameter.

  • str - reťazec, ktorý sa má porovnať

návratová hodnota compareTo ()

  • vráti 0, ak sú reťazce rovnaké
  • vráti záporné celé číslo, ak stringje pred strargumentom v poradí slovníkov
  • vráti kladné celé číslo, ak nasleduje stringza strargumentom v poradí slovníkov

Príklad: Java String 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 ) )

Tu,

  • str1 a str2 sú rovnaké. Preto str1.compareTo(str2)vráti 0.
  • str1 predchádza str3 v poradí slovníkov. Preto sa str1.compareTo(str3)vráti negatívny a str3.compareTo(str1)vráti sa pozitívny.

Príklad 2: Skontrolujte, či sú dva reťazce rovnaké

 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"); ) ) )

Výkon

 str1 a str2 nie sú rovnaké

compareTo()Metóda berie písmeno (veľké a malé) do úvahy.

Príklad 3: compareTo () s prípadom

 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 ) )

Keď "Learn Java"sa porovná s "learn Java", nedostaneme 0. Je to preto, lebo compareTo()berie do úvahy veľké a malé písmená.

Poznámky:

  • Ak potrebujete porovnať dva reťazce ignorujúce malé a veľké písmená, použite metódu Java String compareToIgnoreCase ().
  • Ak prejdete nullk compareTo()metóde, zobrazí sa chyba.

Súvisiaci výukový program: Java String equals ()

Zaujímavé články...