Πώς να χρησιμοποιήσετε τις Java enums για να δημιουργήσετε σταθερές στον κώδικά σας
Με τις Java enums, μπορείτε να δημιουργήσετε μεταβλητές με σταθερές τιμές. Αυτές γράφονται με κεφαλαία γράμματα και δεν μπορούν να αλλάξουν. Χρησιμοποιούνται για να βελτιώσουν τη λογική και την αναγνωσιμότητα του κώδικα σας και μπορούν να σας βοηθήσουν να δημιουργήσετε καθαρό κώδικα.
Τι είναι οι Java enums;
Στη Java, οι enums αναφέρονται σε έναν ειδικό τύπο δεδομένων που μπορεί να χρησιμοποιηθεί σε συμβατικές κλάσεις, αλλά διαφέρει από αυτές σε ένα βασικό σημείο. Μια enum είναι ένας τύπος μεταβλητής που έχει συγκεκριμένα καθορισμένες, σταθερές και, ως εκ τούτου, περιορισμένες επιλογές τιμών. Οι Java enums είναι σταθερές που αποτρέπουν τη χρήση ανεπιθύμητων τιμών στον κώδικα. Αυτό εξασφαλίζει ότι η δομή του κώδικα είναι λογική και αυξάνει την αναγνωσιμότητα. Ο όρος «enum» προέρχεται από τη λέξη «enumeration» (απαρίθμηση).
Ποια είναι η σύνταξη για τις απαριθμήσεις Java;
Η σύνταξη για τις απαριθμήσεις Java έχει πάντα την ίδια δομή και μοιάζει με την εξής:
enum NameOfTheClass {
VALUE1,
VALUE2,
VALUE3
}javaΕπομένως, αν θέλετε να ορίσετε μια κλάση enum, ξεκινήστε με τη λέξη-κλειδί enum, την οποία χρησιμοποιείτε αντί για class ή interface. Στη συνέχεια, ονομάστε την ειδική κλάση και τοποθετήστε τις επιθυμητές επιτρεπόμενες σταθερές στις αγκύλες. Οι σταθερές γράφονται πάντα με κεφαλαία γράμματα και διαχωρίζονται μεταξύ τους με κόμματα.
Πώς να δημιουργήσετε μια κλάση με enum
Ένας τρόπος με τον οποίο μπορείτε να χρησιμοποιήσετε τις Java enums είναι να δημιουργήσετε μια λίστα που να περιέχει τους μήνες του έτους. Μια τέτοια λίστα θα περιέχει μόνο δώδεκα πιθανές τιμές. Εάν σε μεταγενέστερο στάδιο χρειαστεί μια μεταβλητή τύπου Months, επιτρέπονται μόνο οι καθορισμένες σταθερές. Δείτε πώς μπορείτε να γράψετε τον κώδικα:
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}javaΓια να δηλώσετε μια μεταβλητή του τύπου Months, εκχωρήστε της μια τιμή και χρησιμοποιήστε την εντολή Java System.out.println για να την εμφανίσετε. Αυτό φαίνεται ως εξής στον κώδικα:
public class Main {
public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
}
}javaΠώς να χρησιμοποιήσετε τις Java enums μέσα σε μια κλάση
Μπορείτε επίσης να χρησιμοποιήσετε Java enums μέσα σε μια κλάση. Για το παραπάνω παράδειγμα, θα είχε την εξής μορφή:
public class Main {
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}
public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
}
}javaΠώς να χρησιμοποιήσετε τη μέθοδο values() για να αναζητήσετε όλες τις σταθερές
Αν θέλετε να εμφανίσετε όλες τις διαθέσιμες τιμές, μπορείτε να χρησιμοποιήσετε τη μέθοδο values(). Αυτή εμφανίζει τις σταθερές με τη μορφή πίνακα. Δείτε πώς μπορείτε να το κάνετε με το παραπάνω παράδειγμα:
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}
public class Main {
public static void main(String[] args) {
for (Months month : Months.values()) {
System.out.println(month);
}
}
}javaΠώς να χρησιμοποιήσετε τις Java enums με switch()
Μπορείτε επίσης να συνδυάσετε τις Java enums με άλλες μεθόδους. Δείτε πώς φαίνεται όταν συνδυάζεται με switch():
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}
public class Main {
public static void main(String[] args) {
Months month = Months.APRIL;
switch (month) {
case APRIL:
System.out.println("The outdoor pool is closed.");
break;
case MAY:
System.out.println("The outdoor pool is closed.");
break;
case JUNE:
System.out.println("The outdoor pool eagerly awaits your visit!");
break;
// You can now try this out for all months.
}
}
}java