黑马程序员技术交流社区
标题:
帮忙解释下这句代码什么意思【已解决】
[打印本页]
作者:
刘佳
时间:
2012-8-22 16:39
标题:
帮忙解释下这句代码什么意思【已解决】
本帖最后由 刘佳 于 2012-8-22 17:10 编辑
for (Object obj:books )
{
}
这句代码什么意思?有何含义?
for里面不都是放(初始化表达式;条件表达式;控制语句)吗,for还有其他的形式?
作者:
刘芮铭
时间:
2012-8-22 16:44
本帖最后由 刘芮铭 于 2012-8-22 16:47 编辑
楼主你好 看来你在基础方面还有待加强
这个是
JAVA1.5版本以后出现的新特性
叫做
增强for循环或者高级for循环
可以这么理解:
for(数据类型 变量名 : 需要遍历的集合或者数组)
{
}
上述你说的for循环 我们称之为:传统for
下面给你说一下传统for和高级for的区别:
高级for有一个局限性:必须要有被遍历的目标!
建议:在遍历数组的时候,还是希望用传统for,因为可以定义角标!
作者:
゛﹏_小三No°
时间:
2012-8-22 16:45
这是JDK1.5后的写法 和以前的for(int i=0;i<=books.length();i++)一样的用法,那个obj是自己起的名字
如果想打印books数组中的每个元素时,就在方法体中写system.out.print(obj); 就OK了
作者:
梁志仲
时间:
2012-8-22 16:45
这是增强for语句,jdk1.5的新特性。
增强的for语句形式如下:
for(Type loop-variable:set - expression)
statement
其中set - expression必须为确定的对象,这个对象是我们想要迭代的数值的集合。loop-variable是一个局部变量,它的类型Type必须适合于数值集合set - expression的内容,每次进行循环时,loop-variable都会从set - expression取出下一个值,然后执行statement,直到取完集合中的数据。
set - expression必须是数组或者实现了java.lang.Iterable接口的对象
它的好处是不用手工维护数组角标,也不必检查数组的长度。
它的缺点是只能在单独的一个数组上向前循环,并且只能查看数组的元素
作者:
霍明波
时间:
2012-8-22 16:49
foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。foreach语句是for语句的特殊简化版本,你提问的高级for循环都可以用for来写,通常高级FOr循环成为foreach.
优点遍历集合、数组等提供了方便优化的写法。缺点是不能动态的删除元素,好像还有多线程最好不要用foreach,容易出现错误。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2