A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ^.^晴天 初级黑马   /  2012-5-18 00:53  /  2007 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

枚举和迭代有什么具体区别?

2 个回复

倒序浏览
      枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译就会报错。枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量的方式在开发阶段无法实现这一目标
      迭代是重复地与自身复合的方法,调用迭代方法,可避免做重复性操作,让程序在执行时。,每次都从变量的原值得到一个新值。简化了程序的结构,使其执行效率更高。
       二者的联系不是很大,枚举可以看成是一个取有效特定值的类,适合用在引用一些生活中固定不变的对象,例如:月份,星期,交通灯等。而迭代则是解决运算问题的一种算法,更多时候当做方法被调用,用于解决一些有重复性的事,例如:算n!

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
随着计算机的不断普及,程序不仅只用于数值计算,还更广泛地用于处理非数值的数据。例如:性别、月份、星期几、颜色、单位名、学历、职业等,都不是数值数据。  在其它程序设计语言中,一般用一个数值来代表某一状态,这种处理方法不直观,易读性差。如果能在程序中用自然语言中有相应含义的单词来代表某一状态,则程序就很容易阅读和理解。也就是说,事先考虑到某一变量可能取的值,尽量用自然语言中含义清楚的单词来表示它的每一个值,这种方法称为枚举方法,用这种方法定义的类型称枚举类型。——书中的介绍,很清楚了。
迭代如果你不理解你可以从算法的角度理解下。在算法中有一种迭代算法,意思就是通过前两个已知值来推出后面的值。比如基数数列:
f(n)=f(n-1)+2;f(1)=1,那么可以推出后面的值3,5,7,9。。。。。   JAVA中的迭代方法很类似,就是通过it.hasNext()来判断时候有下一个元素,然后通过it.next()来获取下一个元素。   总之就是通过上一个获取下一个,这就是迭代的思想。    不断通过已知的新元素获取下一个未知元素,这是一种思路。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马