📜  枚举类型 (1)

📅  最后修改于: 2023-12-03 14:55:31.833000             🧑  作者: Mango

枚举类型简介

什么是枚举类型

枚举类型(Enumeration Type)是一种用户自定义的类型,它由若干个原子类型的值组成的集合。一个枚举类型通常表示一组相关的常量,这些常量称为枚举值(Enum Value)。在使用枚举类型时,只能从枚举值中进行选择,这样可以保证程序的正确性,避免了使用不合法的值。

枚举类型的定义和使用

枚举类型的定义和普通的类型定义类似,不同之处在于需要使用 enum 关键字来声明一个枚举类型,然后在 {} 中列出该枚举类型所包含的枚举值。示例代码如下:

public enum Weekday {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}

上面的代码定义了一个名为 Weekday 的枚举类型,其中包含了一周的七天。当需要使用枚举类型时,可以直接使用枚举值而不必在意其具体的数值:

Weekday day = Weekday.SUNDAY;

在上面的代码中,我们把一个枚举值 Weekday.SUNDAY 赋值给了变量 day。此时 day 的值就是 Weekday.SUNDAY,而不是 0 或者其他值。

枚举类型还可以包含字段和方法,就像类一样。下面是一个包含字段和方法的枚举类型的示例:

public enum Gender {
    MALE("男"), FEMALE("女");

    private final String name;

    Gender(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
}

在上面的示例中,我们定义了一个名为 Gender 的枚举类型,其中包含了两个值:MALEFEMALE。此外,我们还定义了一个名为 name 的字段和一个名为 getName 的方法。这些字段和方法可以在枚举值中使用:

Gender g1 = Gender.MALE;
String name = g1.getName(); // 返回 "男"
总结

枚举类型是一种非常实用的类型,它可以帮助我们更好地管理代码,避免出现一些无法预料和难以解决的问题。在实际开发中,我们可以根据需要自定义各种不同的枚举类型,从而使代码更加清晰、简洁和易于维护。