什么是枚举类?

类的对象只有有限个,确定的。举例如下:
星期: Monday(星期一) …. Sunday(星 期天)
性别: Man(男 )、Woman(女)
季节: Spring(春 ….winer(冬天)
支付方式: Cash (现金)、WeChatPay (微信)、Alipay(支 付宝)、BankCard(银行卡)、CreditCard(信用卡)
就职状态: Busy、 Free、 Vocation、 Dimission
订单状态: Nonpayment (未付款)、Paid (已付款)、Fulilld (已配货)
Delivered (已发货)、Return (退货)、Checked ( 已确认)
线程状态:创建、就绪、运行、阻塞、死亡
当需要定义一组常量时,强烈建议使用枚举类

注意事项,因为是常量,所以设置属性时要使用final关键字。

枚举示例

  1. /**
  2. * 枚举示例
  3. */
  4. public enum WeekEnum {
  5. MONDAY("1"), TUESDAY("2"), WEDNESDAY("3"),
  6. THURSDAY("4"), FRIDAY("5"), SATURDAY("6"), SUNDAY("7");
  7. private final String value;
  8. WeekEnum(String value) {
  9. this.value = value;
  10. }
  11. public String getValue() {
  12. return value;
  13. }
  14. @Override
  15. public String toString() {
  16. return "WeekEnum{" +
  17. "value='" + value + '\'' +
  18. '}';
  19. }
  20. public static void main(String[] args) {
  21. WeekEnum[] values = WeekEnum.values();
  22. for (WeekEnum value : values) {
  23. System.out.println(value);
  24. }
  25. }
  26. }

枚举类的方法

Enum类的主要方法:

values()方法:返回枚举类型的对象数组。该方法可以很方便地遍历所有的枚举值。 valueOf(String str):可以把- - 个字符串转为对应的枚举类对象。要求字符串必须是枚举类对象的“名字”。如不是,会有运行时异常:,IllegalArgumentException。 toString():返回当前枚举类对象常量的名称

  1. public static void main(String[] args) {
  2. WeekEnum[] values = WeekEnum.values();
  3. for (WeekEnum value : values) {
  4. System.out.println(value);
  5. }
  6. WeekEnum weekEnum = WeekEnum.valueOf("11");
  7. System.out.println(weekEnum);
  8. }