Il metodo Java String compareTo () confronta due stringhe lessicograficamente (nell'ordine del dizionario). Il confronto si basa sul valore Unicode di ogni carattere nelle stringhe.
La sintassi del compareTo()
metodo è:
string.compareTo(String str)
Qui, la stringa è un oggetto della String
classe.
Parametri compareTo ()
Il compareTo()
metodo accetta un singolo parametro.
- str - la stringa da confrontare
compareTo () Valore restituito
- restituisce 0 se le stringhe sono uguali
- restituisce un numero intero negativo se
string
viene primastr
dell'argomento nell'ordine del dizionario - restituisce un numero intero positivo se
string
viene dopo l'str
argomento nell'ordine del dizionario
Esempio: 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 ) )
Qui,
- str1 e str2 sono uguali. Quindi,
str1.compareTo(str2)
restituisce 0. - str1 viene prima di str3 nell'ordine del dizionario. Quindi,
str1.compareTo(str3)
restituisce negativo estr3.compareTo(str1)
restituisce positivo.
Esempio 2: controlla se due stringhe sono uguali
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"); ) ) )
Produzione
str1 e str2 non sono uguali
Il compareTo()
metodo prende in considerazione il caso delle lettere (maiuscolo e minuscolo).
Esempio 3: compareTo () With Case
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 ) )
Quando "Learn Java"
viene confrontato con "learn Java"
, non otteniamo 0. È perché compareTo()
prende in considerazione il caso delle lettere.
Appunti:
- Se è necessario confrontare due stringhe ignorando le differenze tra maiuscole e minuscole, utilizzare il metodo Java String compareToIgnoreCase ().
- Se passi
null
alcompareTo()
metodo, otterrai un errore.
Tutorial correlato: Java String è uguale a ()