Metoda Java String compareTo (): Kako koristiti s primjerima

Sadržaj:

Anonim

Što je metoda compareTo () u Javi?

compareTo () koristi se za leksikografsku usporedbu dviju žica. Svaki znak oba niza pretvara se u Unicode vrijednost. Međutim, ako su oba niza jednaka, tada ova metoda vraća 0, a rezultat je samo negativna ili pozitivna vrijednost.

Metoda Java String compareTo () definirana je u sučelju java.lang.Comparable

Sintaksa: Kako napisati metodu compareTo () u Javi :

public int compareTo(String str)

Unos parametra:

str - Funkcija compareTo () u Javi prihvaća samo jedan ulazni tip podataka tipa String.

Povratak metode:

Ova metoda compareTo () Java vraća int tip podataka koji se temelji na leksikografskoj usporedbi između dva niza.

  • vraća <0 tada je String koji poziva metodu prvo leksikografski
  • vraća == 0 tada su dva niza leksikografski ekvivalentna
  • vraća> 0, a zatim je parametar proslijeđen u metodu Java compareTo () prvo leksikografski.

Java String compareTo () metoda Primjer:

Primjer 1:

public class Sample_String {public static void main(String[] args) {String str_Sample = "a";System.out.println("Compare To 'a' b is : " + str_Sample.compareTo("b"));str_Sample = "b";System.out.println("Compare To 'b' a is : " + str_Sample.compareTo("a"));str_Sample = "b";System.out.println("Compare To 'b' b is : " + str_Sample.compareTo("b"));}}

Izlaz

Usporedba s 'a' b je: -1

Usporedi s 'b' a je: 1 Usporedi s 'b' b je: 0

Ovdje,

  • Znak a dolazi ispred b abecedno. Stoga je izlaz -1
  • Znak b dolazi abecedno. Stoga je izlaz 1
  • Znak b je ekvivalentan, stoga je izlaz 0.

Možete koristiti metodu Koristite "compareToIgnoreCase" u slučaju da ne želite da rezultat razlikuje velika i mala slova. Razumijemo s primjerom Java compareTo ().

Primjer 2:

public class Sample_String {public static void main(String[] args) {//Compare to a StringString str_Sample = "RockStar";System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar"));//Compare to - Ignore caseSystem.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR"));}}

Izlaz

Usporedi s "ROCKSTAR": -32 Usporedi s "ROCKSTAR" - Ignoriran slučaj: 0

Kada koristiti metodu compareTo () u Javi?

Java String compareTo () metoda koristi se za izvođenje prirodnog sortiranja niza. Prirodno sortiranje znači redoslijed sortiranja koji se primjenjuje na objekt, npr. Leksički redoslijed za niz, numerički redoslijed za sortiranje cijelih brojeva itd.

Leksički poredak nije ništa drugo nego abecedni poredak. compareTo () Java metoda vrši sekvencijalnu usporedbu slova u nizu koja imaju isti položaj.

U ovoj metodi, ako je prvi niz uvijek leksikografski veći od drugog, vraća pozitivan broj.

ako je a1> a2, vraća negativan broj

ako je a1

ako je a1 == a2, vraća 0

Razumijemo s primjerom Java String compareTo ().

Primjer 3:

public class Compare {public static void main(String[] args) {String s1 = "Guru1";String s2 = "Guru2";System.out.println("String 1: " + s1);System.out.println("String 2: " + s2);// Compare the two strings.int S = s1.compareTo(s2);// Show the results of the comparison.if (S < 0) { System.out.println("\"" + s1 + "\"" + " is lexicographically higher than " + "\"" + s2 + "\"");} else if (S == 0) {System.out.println("\"" + s1 + "\"" + " is lexicographically equal to " + "\"" + s2 + "\"");} else if (S> 0) {System.out.println("\"" + s1 + "\"" + " is lexicographically less than " + "\"" + s2 + "\"");}}}

Izlaz:

Niz 1: Guru1

Niz 2: Guru2 "Guru1" leksikografski je veći od "Guru2"