温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java中枚举类型如何使用

发布时间:2021-07-01 15:02:21 来源:亿速云 阅读:212 作者:Leah 栏目:大数据

本篇文章给大家分享的是有关Java中枚举类型如何使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。


1//定义枚举类型
2enum Day {
3  MONDAY, TUESDAY, WEDNESDAY,
4  THURSDAY, FRIDAY, SATURDAY, SUNDAY
5}

那我们先来看一下他的概念是啥,枚举类型是Java5新增的特性,他是一种特殊的数据类型,是因为他既是一种类(class)类型,又比普通的类型多了写特殊的约束。

1.为什么要使用

比如刚才举的例子,如果我们不用枚举类型也行,那就定义常量就行,如下图:

Java中枚举类型如何使用

但是这样做是存在缺点的,比如我在里面写错啦一个单词,如下图:

Java中枚举类型如何使用

他是不提示我的,可是我如果用枚举,他就可以提示我数据重复,如下图:

Java中枚举类型如何使用

还有就是不用枚举类型,代码不够简洁,冗余代码太多。

2.枚举是什么

我们先编译一个上面写的Day.java文件,然后反编译他,看他编译出来的结果是什么,如下图:

Java中枚举类型如何使用

从上图我们可以看出反编译出来Day是一个final类型,也就是不能被其他类继承,并且他是继承于Enum类的。如果我们定义一个枚举类型,其实Java替我们做了定义常量这件事情,也就是上图1的区域。区域3,4是由编译器插入的,下面的图借的人家的。

Java中枚举类型如何使用

值得注意的是这两个方法是有编译插入的,所以他只停留在本类的层面。不信咱就试试

Java中枚举类型如何使用

3.阅读源码

 我们找到Enum类,看一下他里面有哪些方法,以及各方法的作用。

Java中枚举类型如何使用

compareTo:比较我的序数与你的序数之间的差别。

equals:比较枚举类型是否相等。

getDeclaring:与该枚举类型值相对应的类。

ordinal:返回枚举常量的序数。

valueOf:返回带指定名称的指定枚举类型的枚举常量,如果不存在,会直接报错,如下图中标红区域。

空讲没意思,我们来练练。

Java中枚举类型如何使用

Java中枚举类型如何使用

以上就是Java中枚举类型如何使用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI