枚举

126 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第6天,点击查看活动详情。 ​

枚举是一组常量的集合,枚举是一种特殊的类,里面只包含一组有限的特定的对象Java的枚举类型用于在某些东西可以枚举出来的时候,我们可以把它定义为枚举类型,然后把其中包含的可选值一一枚举。打个比方,我们现在有一堆数字,大致可以分为四种类型,整型、浮点型、金额和百分比。整型的我就需要按整型显示,如果是浮点型则要求保留两位小数,如果是金额则要求按千分位展示,如果是百分比则要求显示对应的百分比。为此我们就定义了一个枚举类型NumberType,其一共四个枚举值,每个枚举值之间用逗号分隔,最后一个枚举值用分号结束(也可以不用,但是如果最后一个值后面还有其它内容时必须用分号结束)。

【自定义枚举类】

  • 不需要提供set方法,枚举对象只读

  • 对枚举对象属性使用final + static 修饰,实现底层优化

  • 枚举对象名通常全部大写

【例如】

  • public static final Season SPRING = new Season("春天", "温暖");
  • public static final Season WINTER = new Season("冬天", "寒冷");
  • public static final Season AUTUMN = new Season("秋天", "凉爽");
  • public static final Season SUMMER = new Season("夏天", "炎热");

【使用关键字Enum】

【注意事项】

定义一个常量类也可以达到对应的效果,但是在使用枚举类的时候将更加的方便。例如我们的类型是安全的,当你使用枚举类型时你传递的只能是对应的枚举类型里面包含的枚举元素,而你使用常量时你传递的类型只能是一个Integer,但是调用者完全有可能传入一个你没有定义的Integer。

  • 默认继承Enum类 就不能再继承任何类 可以实现接口

  • 简化写后必须知道是那个构造器

  • 多个枚举对象,使用,号间隔

  • 枚举对象必须放在枚举类首行

【枚举类常用方法】


作者:炮火哥
链接:juejin.cn/post/708329… 来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。