Java基础部分知识点——枚举Enum
2018-03-19 22:36
274 查看
Enum 枚举
Enum 一般用来表示一组相同类型的常量。如:性别、日期、月份、颜色等。对这些属性用常量的好处是显而易见的,不仅可以保证单例,且在比较的时候可以用 ”==” 来替换 equals。在 JDK1.5 之前是没有 Enum 这个类型的,那时候一般用接口常量来替代。
现在来给大家写一个枚举对象,在 eclipse 中可以直接 new 一个 Enum 类,
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8ro4nKINZer3blL7kUqbuacC4QQyK1ick8OxdYj0SuHjjQU5pCBY4a9UQ/640?tp=webp&wxfrom=5&wx_lazy=1)
我们来写一个『星期一~星期日』的枚举类。
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8rcFSy0oswgvaiaEJWtdnKSby3ia4rbqu3LElcxibDwySTN0n8ScIfJaHVA/640?tp=webp&wxfrom=5&wx_lazy=1)
枚举对象写完了,现在给大家要是一下 Enum 对象的常用操作
Enum 对象的常用操作
首先是枚举对象的遍历,利用 foreach 输出枚举对象中的所有内容。
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8rSMDXgztKenACaO6XZmwGBSAMutyKicM156USib2fWlVriaCD6x82MKPvA/640?tp=webp&wxfrom=5&wx_lazy=1)
用 switch 来匹配 Enum 中的内容.
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8r1pticgdqdDRnFDbs3qicxUVPQ3bqjNpl0NGzbhicG396rS6r04hO45H5g/640?tp=webp&wxfrom=5&wx_lazy=1)
一般就是这两种操作了下面给大家介绍一下 Enum 的常用方法.
Enum 对象的常用方法
getDeclaringClass() 方法返回和当前枚举常量的枚举类型对应的 class 对象
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8raWricKDA3OQ2ibwQALuBT86fqosM8strOsEHiahnDibwmc1uBnHk9lFiaAg/640?tp=webp&wxfrom=5&wx_lazy=1)
name() 和 toString() 方法是一样的返回枚举常量的名称,这个名称是字符串类型的.两个方法一样,演示一个就好了哈~
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8reFzYvGhlxxRT5NvUF7zM0e3vxVickicJxCsTH6mnBPWJvj8x9LURnCcA/640?tp=webp&wxfrom=5&wx_lazy=1)
ordinal() 方法返回的枚举常量的序号,值得注意的是 Enum 对象的序号是从0开始计数的,小伙伴们在使用的时候要注意这一点.
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8rTwrYrkDyaua38KxudoOQCpNdJoFuQsZUhPMR2lsw7mBTvmzyfaOYcg/640?tp=webp&wxfrom=5&wx_lazy=1)
其实,除了使用 Enum 本身的方法,我们还可以自定义 Enum 对象的属性,重写 WorkDay 的构造方法,构造方法必须私有化.
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8rBEGxJricYf9FclREtCaMoZXibg1z6PfTEndRV4FQnEcUkLicfYvfMfkpw/640?tp=webp&wxfrom=5&wx_lazy=1)
现在我们来输出一下,我们设置的 value 和 Enum 自带的 ordinal 是不一样的哦~
![](https://mmbiz.qpic.cn/mmbiz_png/RoiavD0oAdqDGqvjLcS3NIahUFbmzMP8rj2FicueMdnlLC9icJYH3A58JVtX7IIR4DetictGjGVRbg3zAtBLIY5d1Q/640?tp=webp&wxfrom=5&wx_lazy=1)
其实枚举也可以称之为穷举,就是把一个事物的所有可能性都列举出来,然后进行操作.今天的代码量比较少,就不粘了.小伙伴们有时间就敲一下试试吧~
Enum 一般用来表示一组相同类型的常量。如:性别、日期、月份、颜色等。对这些属性用常量的好处是显而易见的,不仅可以保证单例,且在比较的时候可以用 ”==” 来替换 equals。在 JDK1.5 之前是没有 Enum 这个类型的,那时候一般用接口常量来替代。
现在来给大家写一个枚举对象,在 eclipse 中可以直接 new 一个 Enum 类,
我们来写一个『星期一~星期日』的枚举类。
枚举对象写完了,现在给大家要是一下 Enum 对象的常用操作
Enum 对象的常用操作
首先是枚举对象的遍历,利用 foreach 输出枚举对象中的所有内容。
用 switch 来匹配 Enum 中的内容.
一般就是这两种操作了下面给大家介绍一下 Enum 的常用方法.
Enum 对象的常用方法
getDeclaringClass() 方法返回和当前枚举常量的枚举类型对应的 class 对象
name() 和 toString() 方法是一样的返回枚举常量的名称,这个名称是字符串类型的.两个方法一样,演示一个就好了哈~
ordinal() 方法返回的枚举常量的序号,值得注意的是 Enum 对象的序号是从0开始计数的,小伙伴们在使用的时候要注意这一点.
其实,除了使用 Enum 本身的方法,我们还可以自定义 Enum 对象的属性,重写 WorkDay 的构造方法,构造方法必须私有化.
现在我们来输出一下,我们设置的 value 和 Enum 自带的 ordinal 是不一样的哦~
其实枚举也可以称之为穷举,就是把一个事物的所有可能性都列举出来,然后进行操作.今天的代码量比较少,就不粘了.小伙伴们有时间就敲一下试试吧~
相关文章推荐
- Java基础部分知识点——枚举Enum
- Java基础:枚举Enum
- 智渔课堂官方免费教程二十五:Java基础教程之枚举 enum
- java基础总结 --- enum枚举的常量相关方法、自动售货机(状态模式)例子
- 房上的猫:java基础知识部分知识点
- java基础部分的第六小部分知识点--…
- Java基础-枚举Enum
- java基础知识部分知识点
- Java基础---枚举及部分JDK1.5新特性 (黑马程序员)
- java基础-enum 枚举
- 给Java新手的一些建议——Java知识点归纳(Java基础部分)
- java基础:enum枚举
- 给Java新手的一些建议——Java知识点归纳(Java基础部分)
- Java基础复习:枚举(java.lang.Enum<E>)
- 给Java新手的一些建议----Java知识点归纳(Java基础部分)
- 给Java新手的一些建议----Java知识点归纳(Java基础部分)
- java 基础总结 -- enum 枚举与接口、泛型、集合的使用
- JAVA入门基础--浅谈枚举Enum类型
- 收集Java面试题知识点(Java基础部分一)
- JAVA基础加强:枚举(Enum)