📅  最后修改于: 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
的枚举类型,其中包含了两个值:MALE
和 FEMALE
。此外,我们还定义了一个名为 name
的字段和一个名为 getName
的方法。这些字段和方法可以在枚举值中使用:
Gender g1 = Gender.MALE;
String name = g1.getName(); // 返回 "男"
枚举类型是一种非常实用的类型,它可以帮助我们更好地管理代码,避免出现一些无法预料和难以解决的问题。在实际开发中,我们可以根据需要自定义各种不同的枚举类型,从而使代码更加清晰、简洁和易于维护。