黑马程序员技术交流社区
标题:
都有哪些数据类型里面可以使用高级for循环???
[打印本页]
作者:
程立彬
时间:
2011-11-23 13:25
标题:
都有哪些数据类型里面可以使用高级for循环???
本帖最后由 程立彬 于 2011-11-24 08:36 编辑
请问都有哪些数据类型里面可以使用高级for循环???
作者:
葛雨龙
时间:
2011-11-23 13:50
高级for循环,不是针对哪些数据类型的;比如你一个集合里面放的是人,那就可以把人遍历出来,
for(对象 对象变量名:要遍历的集合) 只要是对象,就应该可以遍历 我是这么理解的 不知道对不对
作者:
崔浩
时间:
2011-11-23 14:21
给以依据提示的话:Can only iterate over an array or an instance of java.lang.Iterable
也就是说是一个数组类型的或者是必须实现java.util.Iterator的对象类型,像数组,list,set的子类对象是可以的,而 Map的集合是不行的
作者:
王丰盛568
时间:
2011-11-23 14:25
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
注:
a,for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止。
b,while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变量在循环结束后还可以继续使用。
c,最简单无限循环格式:while(true) , for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。
for循环的括号中有三条语句,都是可选项。
语句1:这条语句会在整个循环开始之前执行,且仅运行一次,不参与循环。
语句2:必须是一个返回boolean值的表达式,如果写了这个语句那么每次循环开始之前会判断,true则执行循环,false则不执行。没写则直接执行。
语句3:这条语句在每次循环体运行结束之后执行。
作者:
冯敏
时间:
2011-11-23 16:38
高级for循环只能应用于数组或集合类
作者:
wanghongye
时间:
2011-11-23 18:26
集合或者数组,使用高级for循环比较合适。
举例:
int arr[] = {1, 2, 3, 4, 5};
for (int a : arr)
System.out.println(a);
这样写看起来就非常方便,不过你要是非要使用普通for循环也可以的
这样写:
for (int i = 0; i < arr.length; i++)
System.out.println(arr[i]);
但是看起来不如高级for循环简便吧。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2