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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ID1003 中级黑马   /  2014-5-18 17:21  /  1452 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 ID1003 于 2014-5-19 21:08 编辑

今天学到了for()的增强,可以简化书写,但是在同时,想到了排序的方法,这个方式如何书写排序呢?不知道有没有大神可以帮忙一下。

6 个回复

倒序浏览
由于排序需求操作数组的角标,虽然高级for循环简化了书写,但是也存在了局限性,那就是不能操作角标,而且也必须要有被遍历的目标。

所以开发当中还是建议使用传统for进行遍历。当然,排序操作最好也是用传统for循环了。
回复 使用道具 举报

不知道你说的是不是for each型的循环。foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。
foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本。
所以有些for循环是没法写成等效的for each语句的。

For-Each循环的一般格式就可以看到其应用范围了,如下:

  1. for(数据类型 变量 : 集合)

  2.   语句块
复制代码
在for关键字后面的花括号里先是集合的数据类型,接着是一个元素用于进行操作,它代表了当前访问的集合元素,然后是一个冒号,最后是要访问的集合。


评分

参与人数 1技术分 +1 收起 理由
SyouRai_Tsk + 1

查看全部评分

回复 使用道具 举报
波涛 发表于 2014-5-18 18:12
不知道你说的是不是for each型的循环。foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为 ...

这种方法叫做for each吗?看来我还是接触的东西太少了
回复 使用道具 举报
答案是可以的 搞一个变量 然后对遍历到的元素进行较量 但是只有一种方法可以。
如果是搞一个变量,记住的是角标 那么就不行,如果是一个元素,那是可以的。
回复 使用道具 举报
不可以,对角标操作不能使用foreach
回复 使用道具 举报
ID1003 中级黑马 2014-5-18 20:56:32
7#
虽然大家辛苦的回答了好多答案,但是愚笨的我还是不太明白,不过只要记住,只要是用到角标了,就不用这个for增强就对了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马