diff options
author | Geoff Liu <cangming.liu@gmail.com> | 2015-10-29 23:51:14 +0800 |
---|---|---|
committer | Geoff Liu <cangming.liu@gmail.com> | 2015-10-29 23:51:14 +0800 |
commit | 1f7d7aa4d68de6615761c2b34307f8cf811f7397 (patch) | |
tree | 6f22974ae3bcf2cbba8739521201bc6d1be46b8a | |
parent | 1f4ffc026ea11776cc0df8327577d0496cf14817 (diff) | |
parent | 03ef96b2f11133701a3db64b9133f634a9709e94 (diff) |
Merge pull request #1526 from raphaelbn/patch-3
[java/en] Enum Type
-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 |