大家好,欢迎来到雄雄的小课堂,昨天给大家分享的是“java中的Queue队列的用法示例”,今天,分享的主题是“java中,推荐使用枚举定义常量”。
前言:常量,相信大家多不会陌生,常量值一般是在项目中固定不变的。在项目中,我们经常会用到各种各样的常量,比如性别只有两个值,男或者女,就可以定义两个常量;或者季节春夏秋冬也可以定义为常量。通常我们在java中定义常量都这样写:final String SPRING ="春";今天,我们不使用这种方式,我们使用枚举的方式来定义常量,看看相比之下,枚举定义常量有哪些优点呢?
枚举定义常量:
现在我们使用枚举来定义两个常量,代码如下:
static enum SEX{MAN,WOMEN;}
这是一个简单的枚举常量命名,简单又清晰。
01
枚举常量定义时不必赋值
枚举常量可以不初识赋值,而普通定义的常量必须赋值,即使这个值无意义也得赋。否则编译将无法通过,如下:
给常量MAN赋值,问题解决。
02
枚举常量属于稳态型
比如有人让我们来描述一下男生或者女生都是什么样的,我们使用一般常量这么写:
//定义常量男和女static final int MAN = 0;static final int WOMEN = 1;public static void testChang(int s){//先检验条件if(s>=0&&s<=1){switch (s) {case MAN:System.out.println(MAN+"是帅帅的!");break;case WOMEN:System.out.println(MAN+"是美美的!");break;}}}
可以看得出来,必须先要检验条件,如果当s的值不是0或者1,肯定不能正常输出,如果常量的值很庞大,那么我们校验的时候必然麻烦。但是假如使用枚举,就可以完全避免这种情况,代码如下:
public static void main(String[] args) {testChang(SEX.MAN);} //常量的用法public static void testChang(SEX s){//先检验条件switch (s) {case MAN:System.out.println(MAN+"是帅帅的!");break;case WOMEN:System.out.println(MAN+"是美美的!");break;}}
很明显,限定了参数类型是SEX这个枚举类型,你传别的类型,不好意思,不可以的!在编译期间就避免可能存在的问题出现。
案例参考:《编写高质量代码 改善java程序的151个建议》
作者:秦少波
往期精彩
java中的Queue队列的用法
2020-11-28
面试官:你来说说Servlet的生命周期是什么?
2020-11-27
神奇,PPT还能实现刮奖功能?还能刮奖!
2020-11-26
java中部的分页实现(二)
2020-11-25
javaweb中实现分页,持续更新……
2020-11-24
点分享
点点赞
点在看