Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

In Java, an enumeration is a special type of class that represents a group of related constants. An enumeration defines a set of named values that are represented by unique identifiers. The values of an enumeration are fixed at compile time and cannot be changed at runtime.

Panel
panelIconId1f4a1
panelIcon:bulb:
panelIconText💡
bgColor#E3FCEF

Enumeration, often referred to as "enum" in programming, is a way to create a custom type that consists of a set of named constants. Here's a simple explanation:

  1. Creating Categories: Imagine you have different categories or groups of things that are related. In programming, an enum lets you group these similar items under one name. It's like creating a special list where each item has a specific name.

  2. Named Constants: Each item in an enum is a constant, which means its value does not change. These items are usually related. For example, you could have an enum named DaysOfWeek with items like Monday, Tuesday, Wednesday, and so on.

  3. Simplicity and Readability: Enums make your code simpler and more readable. Instead of remembering numerical codes or values for categories, you use meaningful names. For instance, using DaysOfWeek.Monday is more understandable than just remembering and using the number 1 for Monday.

  4. Fixed Values: The values in an enum are fixed. This means that an enum of days of the week can only contain those specific days. You can't accidentally insert a non-day or make a typo like Mondya, as the compiler won't recognize it.

  5. Use in Switch Statements: Enums are often used in switch statements in programming. Because each enum value is distinct, they work well in situations where you need to make decisions based on categories or specific values.

  6. Underlying Values: While enums are primarily used for their names, they often have underlying integer values associated with them. In many languages, these start from 0 and increase by 1 for each item, but you can usually set these values manually if needed.

Enums are a useful way to group and manage sets of related constants under a single umbrella. They make your code more understandable and less prone to errors caused by using incorrect or invalid values.

To create an enumeration in Java, you define a new class that extends the Enum class and defines a set of named constants as public static final fields. For example:

...

Code Block
languagejava
/**
 * This program demonstrates an enumerated type.
 * Book Example
 */

public class Demo6
{
   // Declare the Day enumerated type.
   enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY,
              THURSDAY, FRIDAY, SATURDAY }

   public static void main(String[] args)
   {
      // Declare a Day variable and assign it a value.
      Day workDay = Day.WEDNESDAY;
      
      // The following statement displays WEDNESDAY.
      System.out.println(workDay);
      
      // The following statement displays the ordinal
      // value for Day.SUNDAY, which is 0.
      System.out.println("The ordinal value for " +
                         Day.SUNDAY + " is " +
                         Day.SUNDAY.ordinal());
      
      // The following statement displays the ordinal
      // value for Day.SATURDAY, which is 6.
      System.out.println("The ordinal value for " +
                         Day.SATURDAY + " is " +
                         Day.SATURDAY.ordinal());

      // The following statement compares two enum constants.
      if (Day.FRIDAY.compareTo(Day.MONDAY) > 0)
         System.out.println(Day.FRIDAY + " is greater than " +
                            Day.MONDAY);
      else
         System.out.println(Day.FRIDAY + " is NOT greater than " +
                            Day.MONDAY);
   }
}

...