java string compareto method with programming examples
V tej vadnici bomo izvedeli več o metodi Java String compareTo () in videli, kako in kdaj uporabljati compareTo v Javi skupaj s sintakso in primeri:
Razumeli boste, kako upravljati Java String s pomočjo Java-metode compareTo (). V tej vadnici bodo opisane tudi izhodne vrste, ki jih bomo dobili z metodo Java compareTo ().
Po branju te vadnice boste zagotovo lahko razumeli in napisali programe Java String, ki za manipulacijo z nizom zahtevajo metodo .compareTo ().
=> Tukaj si oglejte Perfect Guide Training Guide.
Kaj se boste naučili:
Metoda Java String compareTo ()
Metoda Java String compareTo () se uporablja za preverjanje, ali sta dva niza enaka ali ne. Kot že ime pove, primerja dva podana niza in ugotovi, ali sta enaka ali kateri je večji.
Vrnjeni tip metode Java compareTo () je celo število in sintaksa je podana kot:
int compareTo(String str)
V zgornji sintaksi je str spremenljivka String, ki se primerja s pozivalnim nizom.
Na primer: String1.compareTo (String2);
Druga različica Java compareTo () je
int compareTo(Object obj)
V zgornji sintaksi bomo primerjali String z Object obj.
Na primer ,String1.compareTo (»To je nizni predmet«);
Tu je »To je nizni objekt« argument, ki ga posredujemo funkciji compareTo () in primerja to s String1.
Vrste izhodnih metod Java compareTo ()
Izhod ima tri vrste, ki temeljijo na izhodni vrednosti.
Spodaj je tabela, ki pojasnjuje vse tri vrste izhodnih vrednosti.
compareTo () Izhodna vrednost | Opis |
---|---|
Nič | Dva niza sta enaka. |
Večji od nič | Priklicni niz je večji od str. |
Manj kot nič | Priklicni niz je manjši od str. |
S pomočjo primera podrobno razumemo te tri različice.
Primer programiranja
Tu je primer metode compareTo () Java. Primerjava temelji na razliki v vrednosti ASCII znakov. Na splošno je niz nižji od drugega, če je v slovarju pred drugim.
package codes; import java.lang.String; public class CompareTo { public static void main(String() args) { String str1 = 'Grand Theft Auto'; String str2 = 'Assassin Creed'; String str3 = 'Call of Duty'; String str4 = 'Need for Speed'; String str5 = 'Grand Theft Auto'; System.out.println(str1.compareTo(str2)); // Since 'A' is greater than 'G' by 6 characters, so it will return 6 System.out.println(str2.compareTo(str3)); // Since 'C' is smaller than 'A' by 2 characters, so it will return -2 System.out.println(str3.compareTo(str4)); //Since 'N' is smaller than 'C' by 11 characters, so it will return -11 System.out.println(str4.compareTo(str1)); //Since 'G' is Greater than 'N' by 7 characters, so it will return 7 System.out.println(str1.compareTo(str5)); //Strings are equal } }
Izhod:
Pojasnilo primera
V zgornjem primeru smo zajeli pet vhodnih nizov in izvedli osnovno primerjavo med njimi z uporabo metode .compareTo () Java. V prvi primerjavi imamo 'A' večji od 'G' za 6 znakov v abecednem nizu, zato vrne +6. V drugi primerjavi imamo 'C' manjši od 'A' za 2 znaka, zato vrne -2.
V zadnji primerjavi (med str1 in str5), ker sta oba niza enaka, vrne 0.
Različni scenariji
Podrobno razumemo metodo .compareTo (). Tu bomo poskušali analizirati različne scenarije in rezultate vsakega primera.
Scenarij 1: Upoštevajte naslednja dva niza. Primerjali jih bomo in videli rezultat.
String str1 = 'Preizkušanje programske opreme';
String str2 = 'Pomoč pri testiranju programske opreme';
Kakšen bo rezultat str1.compareTo (str2)?
Odgovor: Ker str2 vsebuje 5 znakov (en presledek + štirje znaki) več kot prvi niz. Izhod mora biti -5. Podobno, ko primerjamo str2 s str1, mora biti izhod +5.
package codes; import java.lang.String; public class CompareTo { public static void main(String() args) { String str1 = 'Software Testing'; String str2 = 'Software Testing Help'; System.out.println(str1.compareTo(str2)); // Since str2 contains 5 characters more than the str1, output should be -5 System.out.println(str2.compareTo(str1)); // Since str2 contains 5 characters less than the str1, output should be +5 } }
Izhod:
Scenarij 2: Upoštevajte naslednja dva niza. Primerjali jih bomo in videli rezultat.
Niz str1 = “”;
Niz str2 = '';
aplikacija za prosti čas za iphone in android
Kakšen bo rezultat str1.compareTo (str2)?
Odgovor: Ker str2 vsebuje en znak (presledek) več kot str1, bi moral izhod dati kot -1.
package codes; import java.lang.String; public class CompareTo { public static void main(String() args) { String str1 = ''; String str2 = ' '; System.out.println(str1.compareTo(str2)); //Since str2 contains one character more than str1, it will give -1 System.out.println(str2.compareTo(str1)); //Since str1 contains one character less than str1, it will give 1 } }
Izhod:
Scenarij 3: Upoštevajte naslednja dva niza. Primerjali jih bomo in videli rezultat.
Niz str1 = “SAKET”;
Niz str2 = 'saket';
Kakšen bo rezultat str1.compareTo (str2)?
Odgovor: Tu so nizi enaki, vendar ima str1 velike črke, medtem ko ima str2 male črke. To je bila omejitev metode Java compareTo (). Rezultat, ki ga bomo dobili, ne bo nič. Da bi odpravila to težavo, je Java predstavila še eno različico metode .compareTo (), ki je
.compareToIgnoreCase ()
package codes; import java.lang.String; public class CompareTo { public static void main(String() args) { String str1 = 'SAKET'; String str2 = 'saket'; System.out.println(str1.compareTo(str2)); //The ASCII representation of the lowercase and uppercase has a difference of 32 } }
Izhod:
Java String method compareToIgnoreCase ()
Ker smo o težavi razpravljali v primeru neusklajenosti primerov (Scenarij 3), imamo že drugo različico metode .compareTo (), ki bo prezrla neusklajenost primerov nizov.
Sintaksa te metode je podana kot
int compareToIgnoreCase(String str)
Vse ostalo ostaja enako, razen dejstva, da .compareToIgnoreCase () ne upošteva neujemanja primerov.
Primer programiranja
Tu je primer metode compareTo () Java. V tem primeru smo prikazali razliko v izhodnih vrednostih Java compareTo () in compareToIgnoreCase (). Java compareTo () bo dala razliko -32, medtem ko bo compareToIgnoreCase () razliko 0.
package codes; public class CompareToIgnoreCase { public static void main(String() args) { String str1 = 'SAKET'; String str2 = 'saket'; System.out.println(str1.compareTo(str2)); System.out.println(str1.compareToIgnoreCase(str2)); } }
Izhod:
Pojasnilo primera:
V zgornjem primeru smo vzeli dva niza, ki imata enako vrednost, tako da imata en niz v velikih črkah in drugega v malih črkah. Zdaj bo metoda .compareTo () Java dala rezultate, ki temeljijo na razliki ASCII v vrednosti malih in velikih črk, saj bo upoštevala primer znakov.
Toda Java .compareToIgnoreCase () ne bo upošteval velikih črk in bo dal rezultat kot 0, kar pomeni, da sta oba niza enaka.
Pogosto zastavljena vprašanja
V # 1) Kakšna je razlika med ==, enako in .compareTo ()?
Odgovor: Spodaj so navedene glavne razlike med ==, equals () in compareTo ().
! NAPAKA! nepričakovani operator '=' | enako () | compareTo () |
---|---|---|
! NAPAKA! nepričakovani operator '=' | je enako () metoda. | compareTo () je metoda. |
! NAPAKA! nepričakovani operator '=' | equals () metoda primerja vsebino. | compareTo () opravi primerjavo na podlagi vrednosti ASCII. |
Vrsta vrnitve je logična. | Vrsta vrnitve je logična. | Vrsta vrnitve je Integer. |
Uporablja sklic spremenljivke String, zato bi morali biti naslovi pomnilnika enaki pri primerjavi. | Ne zahteva, da so predmeti logično urejeni. | Zahteva, da so predmeti logično urejeni. |
Tu je primer programiranja, ki ponazarja razliko.
package codes; public class CompareToIgnoreCase { public static void main(String() args) { String str1 = new String('Testing'); String str2 = 'Testing'; System.out.println(str1.compareTo(str2)); System.out.println(str1 ==str2); System.out.println(str1.equals(str2)); } }
Izhod:
V # 2) Ali je v metodi Java compareTo () velika in mala črka?
Odgovor: Da. Java .compareTo () metoda upošteva velike in male črke in razlikuje med velikimi in malimi črkami.
Spodaj je ilustracija.
package codes; public class CompareToIgnoreCase { public static void main(String() args) { String str1 = 'Software'; String str2 = 'SOFTWARE'; System.out.println(str1.compareTo(str2)); } }
Izhod:
Vprašanja in odgovori za izkušeni pdf za sql server 2012
Q # 3) Kako funkcijo compareTo () deluje v Javi?
Odgovor: Metoda Java compareTo () dejansko primerja vrednosti ASCII znakov niza.
Recimo, da bomo z metodo .compareTo () primerjali vejico in presledek. Kot vemo, ima presledek ASCII vrednost 32, medtem ko ima vejica ASCII vrednost 44. Razlika med ASCII vrednostjo presledka in vejico je 12.
Spodaj je primer programiranja.
package codes; public class CompareTo { public static void main(String() args) { String str1 = ','; String str2 = ' '; System.out.println(str1.compareTo(str2)); } }
Izhod:
V # 4) Kako najti dolžino niza z uporabo metode Java .compareTo ()?
Odgovor: Spodaj je program za iskanje dolžine niza z uporabo metode Java .compareTo ().
V tem primeru smo vzeli en niz, katerega dolžino moramo najti, in prazen niz. Nato smo primerjali niz s praznim nizom. Razlika med njima bo v dolžini niza.
package codes; public class CompareTo { public static void main(String() args) { String str1 = 'Tony Stark'; String str2 = ''; System.out.println(str1.compareTo(str2)); } }
Izhod:
V # 5) Kaj vrne metoda compareTo?
Odgovor: Vrnitev metode Java compareTo () je celo število. Celoštevilska vrednost je lahko nič, pozitivno celo ali negativno celo število.
Zaključek
V tej vadnici smo podrobno razumeli metodo Java String compareTo (). Osnovna funkcionalnost, podrobnosti o izvedbi in uporaba, zlasti primeri programiranja, so bili na voljo za boljše razumevanje koncepta, povezanega z metodo String compareTo ().
Preberite tudi = >> Primerljivi in primerjalni vmesniki Java
S to metodo lahko primerjate dva niza in veliko drugih načinov uporabe ali področij uporabe, kot je iskanje dolžine niza možno tudi s pomočjo metode compareTo (), ki je bila obravnavana v pogostih vprašanjih.
=> Obiščite tukaj za ekskluzivno serijo vadnic za učenje Java.
Priporočeno branje
- Vadnica za Java String | Nizovske metode Java s primeri
- Metoda Java String Split () - Kako razdeliti niz v Javi
- Java String z vmesnikom String Buffer in String Builder
- Funkcije niza Python
- Niz nizov Java - Vadnica s primeri kode
- ListIterator vmesnik v Javi s primeri
- Vadnica Java vmesnika in abstraktnega razreda s primeri
- OOP Java: Uvod v objektno usmerjeno programiranje v Javi