Metoden Java String CompareTo () sammenligner to strenge leksikografisk (i ordbogens rækkefølge). Sammenligningen er baseret på Unicode-værdien for hvert tegn i strengene.
Metodens syntaks compareTo()
er:
string.compareTo(String str)
Her er streng et objekt i String
klassen.
sammenligne til () parametre
Den compareTo()
metode tager et enkelt parameter.
- str - strengen, der skal sammenlignes
CompareTo () Return Value
- returnerer 0, hvis strengene er ens
- returnerer et negativt heltal, hvis det
string
kommer førstr
argumentet i ordbogens rækkefølge - returnerer et positivt heltal, hvis det
string
kommer efterstr
argumentet i ordbogens rækkefølge
Eksempel: Java-streng sammenligne til ()
class Main ( public static void main(String() args) ( String str1 = "Learn Java"; String str2 = "Learn Java"; String str3 = "Learn Kolin"; int result; // comparing str1 with str2 result = str1.compareTo(str2); System.out.println(result); // 0 // comparing str1 with str3 result = str1.compareTo(str3); System.out.println(result); // -1 // comparing str3 with str1 result = str3.compareTo(str1); System.out.println(result); // 1 ) )
Her,
- str1 og str2 er ens. Derfor
str1.compareTo(str2)
returnerer 0. - str1 kommer før str3 i ordbogens rækkefølge. Derfor
str1.compareTo(str3)
returnerer negativt ogstr3.compareTo(str1)
returnerer positivt.
Eksempel 2: Kontroller, om to strenge er ens
class Main ( public static void main(String() args) ( String str1 = "Learn Python"; String str2 = "Learn Java"; // if str1 and str2 are equal, the result is 0 if (str1.compareTo(str2) == 0) ( System.out.println("str1 and str2 are equal"); ) else ( System.out.println("str1 and str2 are not equal"); ) ) )
Produktion
str1 og str2 er ikke ens
Den compareTo()
metode tager brev tilfælde (store og små bogstaver) i betragtning.
Eksempel 3: Sammenlign med () med sag
class Main ( public static void main(String() args) ( String str1 = "Learn Java"; String str2 = "learn Java"; int result; // comparing str1 with str2 result = str1.compareTo(str2); System.out.println(result); // -32 ) )
Når "Learn Java"
man sammenligner med "learn Java"
, får vi ikke 0. Det skyldes, at man compareTo()
tager brevsagen i betragtning.
Bemærkninger:
- Hvis du har brug for at sammenligne to strenge, der ignorerer store og små bogstaver, skal du bruge metoden Java String CompareToIgnoreCase ().
- Hvis du går videre
null
tilcompareTo()
metoden, får du en fejl.
Relateret vejledning: Java String er lig med ()