Vad är jämförelsemetoden () i Java?
jämförTo () används för att jämföra två strängar lexikografiskt. Varje tecken i båda strängarna omvandlas till ett Unicode-värde. Men om båda strängarna är lika, returnerar den här metoden 0 annars ger det bara antingen negativt eller positivt värde.
Metoden Java String CompareTo () definieras i gränssnittet java.lang.Comparable
Syntax: Hur man skriver en jämförelsemetod () -metod i Java :
public int compareTo(String str)
Parameterinmatning:
str - Funktionen CompareTo () i Java accepterar endast en datatyp för ingångssträng.
Metoden returnerar:
Denna jämförelse till () Java-metod returnerar en int-datatyp som baseras på den leksikografiska jämförelsen mellan två strängar.
- returnerar <0 då strängen som anropar metoden är lexikografiskt först
- returnerar == 0 då är de två strängarna likvärdigt lexikografiskt
- returnerar> 0 då är parametern som skickas till metoden Java jämför till () lexikografiskt först.
Java String CompareTo () -metod Exempel:
Exempel 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"));}}
Produktion
Jämför med 'a' b är: -1
Jämför med 'b' a är: 1 Jämför med 'b' b är: 0Här,
- Tecken a kommer före alfabetiskt. Därför är utdata -1
- Tecken b kommer efter a alfabetiskt. Därför är produktionen 1
- Tecken b är ekvivalenta, därför är utgången 0.
Du kan använda metoden Använd "CompareToIgnoreCase" om du inte vill att resultatet ska vara skiftlägeskänsligt. Låt oss förstå med ett Java-jämförelse till () exempel.
Exempel 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"));}}
Produktion
Jämför med 'ROCKSTAR': -32 Jämför med 'ROCKSTAR' - Case ignorerad: 0
När ska jag använda metoden comparTo () i Java?
Java String CompareTo () -metoden används för att utföra naturlig sortering på sträng. Naturlig sortering avser den sorteringsordning som gäller för objektet, t.ex. lexikal ordning för sträng, numerisk ordning för sortering av heltal etc.
Lexikalisk ordning är inget annat än alfabetiskt ordning. jämförTo () Java-metoden gör en sekventiell jämförelse av bokstäver i strängen som har samma position.
Om den första strängen alltid är lexikografiskt högre än den andra strängen, returnerar den ett positivt tal.
om a1> a2 returnerar det negativa talet
om a1 om a1 == a2 returnerar den 0 Låt oss förstå med Java String jämför till () exempel. Exempel 3: Produktion: Sträng 1: Guru1public 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 + "\"");}}}