logo

Java virknes salīdzinātTo() metode ar piemēriem

Java virknes ir objekti, kurus iekšēji atbalsta tikai masīvs, kas nozīmē nepārtrauktu atmiņas piešķiršanu rakstzīmēm. Lūdzu, ņemiet vērā, ka Java valodā virknes ir nemainīgas, kas nozīmē, ka, izveidojot virknes objektu un piešķirot tam dažas vērtības, mēs nevaram mainīt saturu. Tomēr mēs varam izveidot citu String objektu ar vajadzīgajām modifikācijām.

Java String klase ietver daudzas metodes, lai izpildītu dažādas darbības ar virknēm, un mēs koncentrēsimies uz Java virkni Salīdzinot ar() metode šajā rakstā.



Java String.compareTo() metode

Java Salīdzinot ar() metode salīdzina doto virkni ar pašreizējo virkni leksikogrāfiski . Tas atgriež pozitīvu skaitli, negatīvu skaitli vai 0. Tas salīdzina virknes, pamatojoties uz Unikoda vērtība katras rakstzīmes virknēs.

Piemērs:

Java








public> class> StringCompareTo {> >public> static> void> main(String[] args) {> >String str1 =>'Geeks'>;> >String str2 =>'Geeks'>;> >int> comparison = str1.compareTo(str2);> >if> (comparison <>0>) {> >System.out.println(str1 +>' comes before '> + str2 +>' lexicographically.'>);> >}>else> if> (comparison>>>) {> >System.out.println(str1 +>' comes after '> + str2 +>' lexicographically.'>);> >}>else> {> >System.out.println(str1 +>' and '> + str2 +>' are lexicographically equal.'>);> >}> >}> }>

>

>

kā pārvērst virkni int

Izvade:

Geeks and Geeks are lexicographically equal.>

Sintakse

int comparison = str1.compareTo(str2);>

Parametri:

  • str1: 1. virkne salīdzinājumam
  • str2: 2. virkne salīdzinājumam

Atgriež:

  • ja virkne1> virkne2 , tas atgriežas pozitīvs numuru
  • ja string1 , tas atgriežas negatīvs numuru
  • ja string1 == virkne2 , tas atgriežas 0

Izņēmums: Tas paredz divus izņēmumus:

  • NullPointerException- ja norādītais objekts ir Null.
  • ClassCastException- ja pašreizējo objektu nevar salīdzināt ar norādīto objektu.

Metodes CompareTo() varianti

Tur ir trīs varianti no Salīdzinot ar() metode, kas ir šāda:

  1. izmantojot int salīdzinātTo(Object Obj)
  2. izmantojot int salīdzinātTo(String AnotherString)
  3. izmantojot int salīdzinātToIgnoreCase(String str)

1. int salīdzinātTo(Object obj)

Šī metode salīdzina šo virkni ar citu objektu.

Sintakse:

int compareTo(Object obj)>

Parametri:

  obj:   the Object to be compared.>

Atgriešanas vērtība: Vērtība 0, ja arguments ir virkne, kas leksikogrāfiski ir vienāda ar šo virkni; vērtība ir mazāka par 0, ja arguments ir virkne, kas leksikogrāfiski ir lielāka par šo virkni; un vērtību, kas ir lielāka par 0, ja arguments ir virkne, kas leksikogrāfiski ir mazāka par šo virkni.

Piemērs:

Tālāk ir parādīta int salīdzinātTo(Object obj) ieviešana:

Java


kā java pārvērst virkni par int



// Java code to demonstrate the> // working of compareTo()> public> class> Cmp1 {> >public> static> void> main(String args[])> >{> >// Initializing Strings> >String str1 =>'geeksforgeeks'>;> >String str2 =>new> String(>'geeksforgeeks'>);> >String str3 =>new> String(>'astha'>);> >// Checking if geeksforgeeks string> >// equates to geeksforgeeks object> >System.out.print(> >'Difference of geeksforgeeks(obj) and geeksforgeeks(str) : '>);> >System.out.println(str1.compareTo(str2));> >// Checking if geeksforgeeks string> >// equates to astha object> >System.out.print(> >'Difference of astha(obj) and geeksforgeeks(str) : '>);> >System.out.println(str1.compareTo(str3));> >}> }>

>

>

Izvade

Difference of geeksforgeeks(obj) and geeksforgeeks(str) : 0 Difference of astha(obj) and geeksforgeeks(str) : 6>

2. int salīdzinātTo(String otherString)

Šī metode leksikogrāfiski salīdzina divas virknes.

Sintakse:

int compareTo(String anotherString)>

Parametri:

  anotherString:    the String to be compared.>

Atgriešanas vērtība: Vērtība 0, ja arguments ir virkne, kas leksikogrāfiski ir vienāda ar šo virkni; vērtība ir mazāka par 0, ja arguments ir virkne, kas leksikogrāfiski ir lielāka par šo virkni; un vērtību, kas ir lielāka par 0, ja arguments ir virkne, kas leksikogrāfiski ir mazāka par šo virkni.

Piemērs:

Tālāk ir parādīta int salīdzinātTo(String otherString) ieviešana:

Java




// Java code to demonstrate the> // working of compareTo()> public> class> Cmp2 {> >public> static> void> main(String args[])> >{> >// Initializing Strings> >String str1 =>'geeksforgeeks'>;> >String str2 =>'geeksforgeeks'>;> >String str3 =>'astha'>;> >// Checking if geeksforgeeks string> >// equates to geeksforgeeks string> >System.out.print(> >'Difference of geeksforgeeks(str) and geeksforgeeks(str) : '>);> >System.out.println(str1.compareTo(str2));> >// Checking if geeksforgeeks string> >// equates to astha string> >System.out.print(> >'Difference of astha(str) and geeksforgeeks(str) : '>);> >System.out.println(str1.compareTo(str3));> >}> }>

>

>

tukšs saraksts java
Izvade

Difference of geeksforgeeks(str) and geeksforgeeks(str) : 0 Difference of astha(str) and geeksforgeeks(str) : 6>

3. int salīdzināt IgnorētCase(String str)

Šī metode leksikogrāfiski salīdzina divas virknes, ignorējot reģistru atšķirības.

Sintakse:

int compareToIgnoreCase(String str)>

Parametri:

  str:   the String to be compared.>

Atgriešanas vērtība: Šī metode atgriež negatīvu veselu skaitli, nulli vai pozitīvu veselu skaitli, jo norādītā virkne ir lielāka, vienāda ar vai mazāka par šo virkni, ignorējot reģistra apsvērumus.

Piemērs:

Tālāk ir parādīta int exampleToIgnoreCase(String str) ieviešana:

Java




// Java code to demonstrate the> // working of compareToIgnoreCase()> public> class> Cmp3 {> >public> static> void> main(String args[])> >{> >// Initializing Strings> >String str1 =>'geeks'>;> >String str2 =>'gEEkS'>;> >// Checking if geeksforgeeks string> >// equates to geeksforgeeks string> >// case sensitive> >System.out.print(> >'Difference of geeks and gEEkS (case sensitive) : '>);> >System.out.println(str1.compareTo(str2));> >// Checking if geeksforgeeks string> >// equates to astha string> >// case insensitive> >// using compareToIgnoreCase()> >System.out.print(> >'Difference of geeks and gEEkS (case insensitive) : '>);> >System.out.println(str1.compareToIgnoreCase(str2));> >}> }>

>

kā noņemt norādi uz c

>

Izvade

Difference of geeks and gEEkS (case sensitive) : 32 Difference of geeks and gEEkS (case insensitive) : 0>

Izņēmumi Java String salīdzinātTo() metodē

Java metode salīdzinātTo() var radīt divus iespējamos izņēmumus:

  • NullPointerException
  • ClassCastException

salīdzinātTo() NullPointerException

Java versijā salīdzinātTo() metode rada NullPointerException, ja kāds no salīdzināmajiem objektiem ir tāds null . Tas nodrošina, ka jūs skaidri apstrādājat nulles vērtības un novērš neparedzētu darbību.

Piemērs:

Java




public> class> cmp5> {> // main method> public> static> void> main(String[] args)> {> > String str =>null>;> > // null is invoking the compareTo method. Hence, the NullPointerException> // will be raised> int> no = str.compareTo(>'Geeks'>);> > System.out.println(no);> }> }>

>

>

Izvade:

  Exception in thread 'main' java.lang.NullPointerException      at cmp5.main(cmp5.java:11)>

salīdzinātTo() ClassCastException

Tas ir izpildlaika izņēmums, un tas notiek, ja tiek salīdzināti divi nesaderīga tipa objekti, izmantojot salīdzināšanas metodi.

Piemērs:

Java




kobola programmēšana

public> class> ClassCastExceptionExample {> >public> static> void> main(String[] args) {> >Object obj1 =>'Hello'>;> >Object obj2 =>10>;>// Integer object> >// Explicitly cast obj2 to String to force the exception> >int> comparison = ((String) obj2).compareTo(obj1);> >System.out.println(>'Comparison: '> + comparison);> >}> }>

>

>

Izvade:

./ClassCastExceptionExample.java:8: error: incompatible types: Object cannot be converted to String int comparison = ((String) obj2).compareTo(obj1); // ClassCastException occurs here>

Lasi arī:

  1. Salīdziniet divas Java virknes
  2. Salīdziniet divas virknes leksikogrāfiski Java valodā
  3. Java Integer salīdzinātTo() metode

Secinājums

Java funkcija salīdzinātTo() tiek izmantota, lai leksikogrāfiski salīdzinātu divas virknes vai objektus. Tas atgriež pozitīvu, nulli vai negatīvu veselu skaitli. Šajā apmācībā mēs esam apskatījuši šo metodi un apsprieduši tās darbību un izņēmumus.

Lasīt vairāk Java virkņu metodes

Java virkne CompareTo() metode — FAQ

Kā salīdzināt virknes Java?

Jūs varat salīdzināt virknes Java, izmantojot salīdzinātTo() metodi. Tas pieņem divus parametrus un salīdzina tos leksikogrāfiski.

Kāda ir atšķirība starp Java metodi salīdzinātTo() un equals() metodi?

vienāds() metode salīdzinātTo() metodi
Izmanto, lai pārbaudītu, vai divi objekti ir tieši vienādi. Izmanto, lai salīdzinātu divus objektus un noteiktu to relatīvo secību.

Atgriež Būla vērtību:

  • taisnība, ja objekti tiek uzskatīti par vienādiem.
  • nepatiess citādi.

Atgriež veselu skaitli:

  • Negatīvā vērtība, ja pirmais objekts tiek uzskatīts par mazāku par otro.
  • Nulle, ja objekti tiek uzskatīti par vienādiem.
  • Pozitīva vērtība, ja pirmais objekts tiek uzskatīts par lielāku par otro.

Ko Java atgriež salīdzinājumsTo ()?

Java metode salīdzinātTo() atgriež veselu skaitli. Tam var būt trīs iespējamās vērtības:

  • Negatīvā vērtība: Kad pirmais objekts tiek uzskatīts par mazāku par otro.
  • Nulle: Kad objekti tiek uzskatīti par vienādiem.
  • Pozitīvā vērtība: Kad pirmais objekts tiek uzskatīts par lielāku par otro.