Java-merkkijono vertaile () -menetelmää: Kuinka käyttää esimerkkien kanssa

Sisällysluettelo:

Anonim

Mikä on Java-vertailumenetelmä ()?

VertaaTo (): ta käytetään kahden merkkijonon vertaamiseen leksikografisesti. Molempien merkkijonojen kukin merkki muunnetaan Unicode-arvoksi. Jos molemmat merkkijonot ovat kuitenkin samat, tämä menetelmä palauttaa arvon 0, muuten se tuottaa vain negatiivisen tai positiivisen arvon.

Java-merkkijonon vertailumenetelmä () on määritetty käyttöliittymässä java.lang.Comparable

Syntaksi: Vertailu () -metodin kirjoittaminen Java : ssa:

public int compareTo(String str)

Parametritulo:

str - Java-toiminnon vertailutoiminto () hyväksyy vain yhden syötetyn merkkijonotyypin.

Menetelmä palauttaa:

Tämä Java-menetelmä vertailee int-tietotyyppiä, joka perustuu kahden merkkijonon leksikografiseen vertailuun.

  • palauttaa arvon <0, sitten metodin kutsuva merkkijono on ensin leksikografisesti
  • palauttaa == 0, sitten kaksi merkkijonoa ovat leksikografisesti vastaavia
  • palauttaa> 0, sitten Java vertaTo () -menetelmälle välitetty parametri on ensin leksikografisesti.

Java-merkkijono vertailumenetelmä () -esimerkki:

Esimerkki 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"));}}

Tuotos

Vertailu kohtaan 'a' b on: -1

Vertaa 'b' a on: 1 Vertaa 'b' b on: 0

Tässä,

  • Merkki a tulee ennen b: tä aakkosjärjestyksessä. Siksi lähtö on -1
  • Merkki b tulee aakkosjärjestykseen. Siksi lähtö on 1
  • Merkki b on vastaava, joten tulos on 0.

Voit käyttää menetelmää Käytä "CompareToIgnoreCase", jos et halua, että tulos on kirjainkoko. Ymmärretään Java-vertailun () -esimerkillä.

Esimerkki 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"));}}

Tuotos

Vertaa ROCKSTARiin: -32 Vertaa ROCKSTARiin - Kotelo ohitettu: 0

Milloin käyttää vertailua () -menetelmää Javassa?

Java String vertailla () -menetelmää käytetään merkkijonon luonnollisen lajittelun suorittamiseen. Luonnollinen lajittelu tarkoittaa objektissa olevaa lajittelujärjestystä, esim. Merkkijonon leksikaalinen järjestys, kokonaislukujen lajittelun numerojärjestys jne.

Leksikaalinen järjestys ei ole muuta kuin aakkosjärjestys. JavaTapa () Java-menetelmä vertailee merkkijonossa olevia kirjaimia, joilla on sama sijainti.

Tässä menetelmässä, jos ensimmäinen merkkijono on aina leksikografisesti suurempi kuin toinen merkkijono, se palauttaa positiivisen luvun.

jos a1> a2, se palauttaa negatiivisen luvun

jos a1

jos a1 == a2, se palauttaa 0

Ymmärretään Java-merkkijonolla esimerkki vertailu ().

Esimerkki 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 + "\"");}}}

Tuotos:

Jono 1: Guru1

Jono 2: Guru2 "Guru1" on leksikografisesti korkeampi kuin "Guru2"