黑马程序员技术交流社区

标题: 关于枚举的问题 [打印本页]

作者: 狼王    时间: 2013-6-10 21:12
标题: 关于枚举的问题
大家好,在看毕老师的基础视频和张孝祥老师的高新技术中的枚举时,他们俩对枚举的看法优点出入
毕老师说:“ enumeration已经过时”而张孝祥老师却把他当enum高新技术讲?他们的差别是?
作者: 星仔子    时间: 2013-6-10 21:34
Enumeration 是 Vector对应的迭代器  是Iterator的前身  是接口  是为了遍历Vector里面元素用的  
Enum 是 类 两者的用处不同  Enum中的出现主要是 为了把集合中的元素 贴上标签 便于使用
比如  你的int[] week ={1, 2, 3, 4, 5,6 ,7}
每个数字代表一周的一天 但是这样  用在程序中  没有办法表达语义  不利于程序阅读
enum WeekDay{
  Monday, Tudesday, ..., Sunday
}
这样  要是 你在程序中 想用 数字1来标示 周一 有了枚举 你就可以 WeekDay.Monday
枚举里面的常量的值 实际上就是数字
所以 枚举常量也可以用在switch-case里面

作者: 鑫森淼焱垚    时间: 2013-6-10 22:27
首先Enumeration是个接口,不是类,它其实是为了实现遍历的,现在迭代器取代了 Java Collections Framework 中的 Enumeration。迭代器与枚举有两点不同:1、迭代器允许调用者利用定义良好的语义在迭代期间从迭代器所指向的 collection 移除元素;2、方法名称得到了改进。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2