我的教科书几乎没有讲到Java中的枚举,我看过的视频也没有解释太多。所以根据我的理解,枚举就像一个完全不同的类
你可以在其中存储常量。有人可以向我详细介绍一下常量吗?也许
给我看看更好的例子?就像我在看到示例后明白了什么是常量一样
例如颜色、方向,在之前的视频中是人,而在枚举中
我学年期间的一个项目的版本,是命令词。但我不是100%
理解概念或如何使用。
另外,当你只能创建一个集合时,枚举还有什么意义呢?像
例如,我看到的最后一个视频,视频制作者以以下格式对人员进行了枚举
name(String description, int Age),这就是他定义构造函数的方式,他有
获取和设置方法。这样做比仅仅创造一个人有什么好处
以相同的方式创建一个集合并将人员对象存储在
那里?
我去查了一下上面的内容,看到这个帖子后:Java枚举和迭代器的区别 https://stackoverflow.com/questions/948194/difference-between-java-enumeration-and-iterator迭代器可以让我循环遍历集合,而这段时间我
认为枚举就像是一个不同的类。但在线程中他们是
比较他们。枚举就像一个迭代器,但没有删除
方法。这个枚举与我上面讨论的有什么不同吗?
您对几个不同的类别感到困惑。
enum
Enumeration
Iterator
An enum
is an 枚举常量,即可以采用多个定义值的常量,例如
public enum Gender {
MALE,
FEMALE;
}
它旨在提供类型安全。
An Enumeration
是现已弃用的一部分Collection
s API - 忘记这个吧。它被取代Iterator
.
An Iterator
是四人帮所描述的迭代器模式的实现。
为什么要使用Iterator
而不是一个Collection
也许我的答案here https://stackoverflow.com/a/20454741/2071828会有帮助的。
As for 人员的枚举,格式为 name(Stringdescription,intage),这就是他定义构造函数的方式,并且他有 get 和 set 方法。这是一个很大的禁忌。
An enum
应该是一个常数,所以不应该有setter
方法。一个enum
是一组定义的值,如上面的示例所示。
如果你想要一个Collection
of people
then a Person
类在一个Collection<Person>
将是正确的解决方案。
所以,总而言之。使用enum
对于常数值;用一个Collection
对于事物的集合。并且不要使用Enumeration
- 忘记它的存在。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)