User Tools

Site Tools


java:comparable

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
java:comparable [2020/02/26 21:11]
gthanos
java:comparable [2020/03/15 18:30]
gthanos
Line 60: Line 60:
  
 Ο λόγος που συμβαίνει αυτό είναι ότι δεν υπάρχει τρόπος να συγκριθούν τα αντικείμενα τύπου ''Rectangle'' μεταξύ τους. Προκειμένου να επιτευχθεί η σύγκριση, η Java αναμένει η κλάση ''Rectangle'' να υλοποιεί το interface [[https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html|java.lang.Comparable]]. Το interface [[https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html|java.lang.Comparable]] απαιτεί να υλοποιήσετε τη μέθοδο ''int compareTo(Rectangle r)'', η οποία επιστρέφει:  Ο λόγος που συμβαίνει αυτό είναι ότι δεν υπάρχει τρόπος να συγκριθούν τα αντικείμενα τύπου ''Rectangle'' μεταξύ τους. Προκειμένου να επιτευχθεί η σύγκριση, η Java αναμένει η κλάση ''Rectangle'' να υλοποιεί το interface [[https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html|java.lang.Comparable]]. Το interface [[https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html|java.lang.Comparable]] απαιτεί να υλοποιήσετε τη μέθοδο ''int compareTo(Rectangle r)'', η οποία επιστρέφει: 
-  * **>0** έαν το τρέχον αντικείμενο είναι μεγαλύτερο από το ''r'',  +  * **> 0** έαν το τρέχον αντικείμενο είναι μεγαλύτερο από το ''r'',  
-  * **<0** εάν το τρέχον αντικείμενο είναι μικρότερο από το ''r''+  * **< 0** εάν το τρέχον αντικείμενο είναι μικρότερο από το ''r''
-  * **==0** εάν το τρέχον αντικείμενο είναι ίσο με το ''r''.+  * **== 0** εάν το τρέχον αντικείμενο είναι ίσο με το ''r''.
  
 Το κριτήριο μέσω του οποίου θα συγκρίνετε δύο αντικείμενα τύπου ''Rectangle'' δεν προσδιορίζεται. Ας υποθέσουμε ότι θέλουμε να κατατάξουμε τα αντικείμεμενα τύπου ''Rectangle'' με βάση το εμβαδό τους. Μπορούμε να γράψουμε τη συνάρτηση compareTo εντός της κλάση ''Rectangle'' ως εξής: Το κριτήριο μέσω του οποίου θα συγκρίνετε δύο αντικείμενα τύπου ''Rectangle'' δεν προσδιορίζεται. Ας υποθέσουμε ότι θέλουμε να κατατάξουμε τα αντικείμεμενα τύπου ''Rectangle'' με βάση το εμβαδό τους. Μπορούμε να γράψουμε τη συνάρτηση compareTo εντός της κλάση ''Rectangle'' ως εξής:
java/comparable.txt · Last modified: 2020/03/15 18:30 (external edit)