Metoda Java String compareTo () uspoređuje dva niza leksikografski (redoslijedom rječnika). Usporedba se temelji na vrijednosti Unicode svakog znaka u nizu.
Sintaksa compareTo()
metode je:
string.compareTo(String str)
Ovdje je string objekt String
klase.
parametri compareTo ()
compareTo()
Postupak ima jedan parametar.
- str - niz koji se uspoređuje
compareTo () Povratna vrijednost
- vraća 0 ako su nizovi jednaki
- vraća negativan cijeli broj ako
string
dolazi ispredstr
argumenta u redoslijedu rječnika - vraća pozitivan cijeli broj ako
string
dolazi nakonstr
argumenta u redoslijedu rječnika
Primjer: 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 ) )
Ovdje,
- str1 i str2 su jednaki. Dakle,
str1.compareTo(str2)
vraća 0. - str1 dolazi ispred str3 u redoslijedu rječnika. Dakle,
str1.compareTo(str3)
vraća negativno, astr3.compareTo(str1)
vraća pozitivno.
Primjer 2: Provjerite jesu li dva niza jednaka
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"); ) ) )
Izlaz
str1 i str2 nisu jednaki
compareTo()
Metoda uzima slučaj slova (velika i mala) u obzir.
Primjer 3: compareTo () s 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 ) )
Kada "Learn Java"
se uspoređuje s "learn Java"
, ne dobivamo 0. To je zato što compareTo()
uzima u obzir slučaj slova.
Bilješke:
- Ako trebate usporediti dva niza zanemarujući razlike u malim i malim slovima, upotrijebite metodu Java String compareToIgnoreCase ().
- Ako prijeđete
null
nacompareTo()
metodu, dobit ćete pogrešku.
Povezani vodič: Java String je jednako ()