2 jgt insect jgt_insect 于 2016.03.10 08:27 提问

枚举有什么好处?为什么要用枚举?

枚举有什么好处?为什么要用枚举?枚举有什么好处?为什么要用枚举?枚举有什么好处?为什么要用枚举?

6个回答

luochoudan
luochoudan   Ds   Rxr 2016.03.10 09:43
已采纳

1 出于类型安全考虑。没有枚举类之前常用静态常量来表示,如
public static final MAN = 0;
public static final WOMAN = 1;
这样的性别定义实际上是一个整型数据,完全可用来做加减运算,当然我们原意并非如此。

2 解决意义不明确。比如调试程序时,本来想输出性别男,结果输出了个0,不是自己写的完全不知道其意义,用枚举类就完美解决了。

3 代码更优雅。一个大一些的程序里面,可能要用到成百上千的静态常量,如果全写在一个文件里面,容易造成命名混淆,程序读起来也比较麻烦。

4 定义自己的类型。如完全可以用enum SEX来包含上面的两种类型,岂不更爽?

一般使用枚举类,出于这几个因素吧。

lx624909677
lx624909677   Ds   Rxr 2016.03.10 08:48

在一定程度上减少代码量,方便对连续数据的修改,只改第一个就可以

qq_20039385
qq_20039385   2016.03.10 09:05

首先枚举是单列,而且不可系列化,不可反射的。当属性的内容已经确定,不会经常修改的时候,就可以考虑用枚举,列如性别有男,女就可以用枚举来实现

lianshaohua
lianshaohua   2016.03.10 09:11

枚举便于记忆和使用,并且相当于一个接口,封装了内部的数据类型,并且限定了数据域

lianshaohua
lianshaohua 回复丶early_worm: 安全
接近 2 年之前 回复
jgt_insect
jgt_insect 限定数据区域的好处是什么?
接近 2 年之前 回复
wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.10 09:50

枚举类的实例数量是固定的,而且通常可以理解为同一类的常量集合,枚举类可以作为switch语句的参数的。

dcxy0
dcxy0   Ds   Rxr 2016.03.10 10:06

枚举一般很少修改,意义更明确(相对于定义一堆变量来说)

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!