diff options
| -rw-r--r-- | java.html.markdown | 58 | 
1 files changed, 58 insertions, 0 deletions
| diff --git a/java.html.markdown b/java.html.markdown index 4f5cde38..1813f81c 100644 --- a/java.html.markdown +++ b/java.html.markdown @@ -697,6 +697,64 @@ public abstract class Mammal()          return true;      }  } + + +// Enum Type +// +// An enum type is a special data type that enables for a variable to be a set of predefined constants. The        // variable must be equal to one of the values that have been predefined for it. +// Because they are constants, the names of an enum type's fields are in uppercase letters. +// In the Java programming language, you define an enum type by using the enum keyword. For example, you would  +// specify a days-of-the-week enum type as: + +public enum Day { +    SUNDAY, MONDAY, TUESDAY, WEDNESDAY, +    THURSDAY, FRIDAY, SATURDAY  +} + +// We can use our enum Day like that: + +public class EnumTest { +     +    // Variable Enum +    Day day; +     +    public EnumTest(Day day) { +        this.day = day; +    } +     +    public void tellItLikeItIs() { +        switch (day) { +            case MONDAY: +                System.out.println("Mondays are bad."); +                break; +                     +            case FRIDAY: +                System.out.println("Fridays are better."); +                break; +                          +            case SATURDAY:  +            case SUNDAY: +                System.out.println("Weekends are best."); +                break; +                         +            default: +                System.out.println("Midweek days are so-so."); +                break; +        } +    } +     +    public static void main(String[] args) { +        EnumTest firstDay = new EnumTest(Day.MONDAY); +        firstDay.tellItLikeItIs(); // => Mondays are bad. +        EnumTest thirdDay = new EnumTest(Day.WEDNESDAY); +        thirdDay.tellItLikeItIs(); // => Midweek days are so-so. +    } +} + +// Enum types are much more powerful than we show above.  +// The enum body can include methods and other fields. +// You can se more at https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html +  ```  ## Further Reading | 
