Differences
This shows you the differences between two versions of the page.
| Both sides previous revision
Previous revision
|
Next revision
Both sides next revision
|
java:jfc_intf_sort [2020/03/16 17:37] gthanos [Συγκρίνοντας με χρήση ενός Comparator object] |
java:jfc_intf_sort [2021/04/05 06:59] gthanos [Συγκρίνοντας με χρήση ενός Comparator object] |
| ===== Συγκρίνοντας με χρήση ενός Comparator object ===== | ===== Συγκρίνοντας με χρήση ενός Comparator object ===== |
| |
| [[:java:comparable#%CF%84%CE%BF_interface_javautilcomparator|Επαναλαμβάνοντας τη συλλογιστική]] για το interface [[https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html|java.util.Comparator]], ας υποθέσουμε ότι θέλουμε να συγκρίνουμε τα αντικείμενα τύπου Student με διαφορετική πολιτική από αυτή που είναι υλοποιημένη στη μέθοδο ''compareTo'' ή ότι θέλουμε να συγκρίνουμε αντικείμενα τα οποία δεν υλοποιούν το interface //Comparable//. Σε αυτή την περίπτωση θα χρειαστούμε μία βοηθητική κλάση του τύπου [[http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html|java.util.Comparator]], όπως παρακάτω | [[:java:comparable#%CF%84%CE%BF_interface_javautilcomparator|Επαναλαμβάνοντας τη συλλογιστική]] για το interface [[https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html|java.util.Comparator]], ας υποθέσουμε ότι θέλουμε να συγκρίνουμε τα αντικείμενα τύπου Student με διαφορετική πολιτική από αυτή που είναι υλοποιημένη στη μέθοδο ''compareTo'' ή ότι θέλουμε να συγκρίνουμε αντικείμενα τα οποία δεν υλοποιούν το interface //Comparable//. Σε αυτή την περίπτωση θα χρειαστούμε μία βοηθητική κλάση του τύπου [[http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html|java.util.Comparator]]. Στο παρακάτω παράδειγμα, με τη βοήθεια της κλάσης StudentComparator γίνεται η σύγκριση αποκλειστικά με βάση το επίθετο και όχι με το συνδυασμό επίθετο και μικρό όνομα. |
| |
| <code java StudentComparator.java> | <code java StudentComparator.java> |