Java karakterlánc összehasonlító ()

A Java String CompareTo () metódus két sztringet lexikografikusan hasonlít össze (szótári sorrendben). Az összehasonlítás a karakterláncok egyes karaktereinek Unicode-értékén alapul.

A compareTo()módszer szintaxisa :

 string.compareTo(String str)

Itt a karakterlánc az Stringosztály objektuma .

Paraméterek

A compareTo()módszer egyetlen paramétert vesz fel.

  • str - az összehasonlítandó karakterlánc

returnTo () visszatérési érték

  • 0-t ad vissza, ha a karakterláncok egyenlőek
  • negatív egész számot ad vissza, ha a szótár sorrendben stringaz strargumentum elé kerül
  • pozitív egész számot ad eredményül, ha a szótár sorrendben stringaz strargumentum után következik

Példa: Java karakterlánc összehasonlítás ()

 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 ) )

Itt,

  • str1 és str2 egyenlő. Ezért str1.compareTo(str2)0-t ad vissza.
  • Az str1 a szótár sorrendjében az str3 elé kerül. Ennélfogva str1.compareTo(str3)negatív és str3.compareTo(str1)pozitív.

2. példa: Ellenőrizze, hogy két karakterlánc egyenlő-e

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

Kimenet

 str1 és str2 nem egyenlő

A compareTo()módszer figyelembe veszi a kis- és nagybetűket.

3. példa: CompareTo () Case-vel

 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 ) )

Ha "Learn Java"összehasonlítjuk "learn Java", akkor nem kapunk 0-t. Ez azért van, mert compareTo()figyelembe veszi a nagybetűket.

Megjegyzések:

  • Ha két karakterláncot kell összehasonlítania, figyelmen kívül hagyva az esetkülönbségeket, használja a Java karakterlánc összehasonlításToIgnoreCase () módszert.
  • Ha áttér nulla compareTo()módszerre, hibát kap.

Kapcsolódó oktatóanyag: A Java karakterlánc egyenlő ()

érdekes cikkek...