Τι είναι η μέθοδος σύγκρισηTo () στην Java;
Το σύγκρισηTo () χρησιμοποιείται για τη σύγκριση δύο χορδών λεξικογραφικά. Κάθε χαρακτήρας και των δύο χορδών μετατρέπεται σε τιμή Unicode. Ωστόσο, εάν και οι δύο συμβολοσειρές είναι ίσες, τότε αυτή η μέθοδος επιστρέφει 0 αλλιώς θα έχει μόνο αρνητική ή θετική τιμή.
Η μέθοδος Java String membandingkanTo () ορίζεται στη διεπαφή java.lang.Comparable
Σύνταξη: Πώς να γράψετε μια μέθοδο σύγκρισης () στη Java :
public int compareTo(String str)
Είσοδος παραμέτρου:
str - Η συνάρτηση membandingkanTo () στη Java δέχεται μόνο έναν τύπο δεδομένων συμβολοσειράς εισόδου.
Επιστροφή μεθόδου:
Αυτή η μέθοδος σύγκρισης Java (Java) επιστρέφει έναν τύπο δεδομένων int που βασίζεται στη λεξικογραφική σύγκριση μεταξύ δύο συμβολοσειρών.
- επιστρέφει <0 τότε η συμβολοσειρά που καλεί τη μέθοδο είναι πρώτα λεξικογραφικά
- επιστρέφει == 0 τότε οι δύο χορδές είναι ισοδύναμα λεξικογραφικά
- επιστρέφει> 0 και στη συνέχεια η παράμετρος που μεταβιβάστηκε στη μέθοδο Java membandingkanTo () είναι πρώτα λεξικογραφικά.
Μέθοδος Java String membandingkanTo () Παράδειγμα:
Παράδειγμα 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"));}}
Παραγωγή
Το Σύγκριση με το 'a' b είναι: -1
Σύγκριση με 'b' a είναι: 1 Σύγκριση με 'b' a είναι: 0Εδώ,
- Ο χαρακτήρας a έρχεται πριν από το β αλφαβητικά. Ως εκ τούτου, η έξοδος είναι -1
- Ο χαρακτήρας b ακολουθεί αλφαβητικά. Ως εκ τούτου, η έξοδος είναι 1
- Ο χαρακτήρας b είναι ισοδύναμος, άρα η έξοδος είναι 0.
Μπορείτε να χρησιμοποιήσετε τη μέθοδο Use "membandingkanToIgnoreCase" σε περίπτωση που δεν θέλετε το αποτέλεσμα να είναι ευαίσθητο σε πεζά. Ας καταλάβουμε με ένα παράδειγμα Java membandingkanTo ().
Παράδειγμα 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"));}}
Παραγωγή
Σύγκριση με το "ROCKSTAR": -32 Σύγκριση με το "ROCKSTAR" - Περίπτωση που αγνοήθηκε: 0
Πότε να χρησιμοποιήσετε τη μέθοδο σύγκρισηςTo () στην Java;
Η μέθοδος Java String membandingkanTo () χρησιμοποιείται για την εκτέλεση φυσικής ταξινόμησης σε συμβολοσειρά. Φυσική ταξινόμηση σημαίνει τη σειρά ταξινόμησης που ισχύει για το αντικείμενο, π.χ. λεξική σειρά για συμβολοσειρά, αριθμητική σειρά για ταξινόμηση ακέραιων, κ.λπ.
Η λεξική σειρά δεν είναι παρά αλφαβητική σειρά. σύγκρισηΤο () Η μέθοδος Java κάνει μια διαδοχική σύγκριση των γραμμάτων στη συμβολοσειρά που έχουν την ίδια θέση.
Σε αυτήν τη μέθοδο, εάν η πρώτη συμβολοσειρά είναι πάντα λεξικογραφικά υψηλότερη από τη δεύτερη συμβολοσειρά, επιστρέφει έναν θετικό αριθμό.
αν a1> a2, επιστρέφει αρνητικό αριθμό
αν a1 αν a1 == a2, επιστρέφει 0 Ας καταλάβουμε με το Java String membandingkanTo () Παράδειγμα. Παράδειγμα 3: Παραγωγή: Σειρά 1: Γκουρού 1public 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 + "\"");}}}