版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_40788630/article/details/81937813
在程序开发中经常需要遍历集合中的所有元素,针对这种需求JDK专门提供了一个接口Iterator。Iterator接口也是Java集合框架下的一员,但它与Collection,map的接口并不一样。collection,map主要用于存储元素,而Iterator主要作用用于迭代访问。因此Iterator对象也被称为迭代器。代码如下:
import java.util.*;
public class Main{
public static void main(String[] args)throws Exception{
ArrayList list=new ArrayList();
list.add("date1");
list.add("date2");
list.add("date3");
list.add("date4");
Iterator it=list.iterator();//获取Iterator对象
while(it.hasNext())//判断集合中是否含有下一个元素
{
Object obj=it.next();//取出集合中元素
System.out.println(obj);
}
}
}
虽然Iterator可以遍历元素。但是写法上比较繁琐,为了简化书写JDK提供了foreach循环,是一种更加简洁的for循环,也称增强for循环。具体格式如下:
for(容器中元素类型 临时变量:容器变量){
执行语句
}
从格式上看foreach循环不需要获得集合长度,也不需要索引,会自动遍历所有元素接下来通过案例来演示:
import java.util.*;
public class Main{
public static void main(String[] args)throws Exception{
ArrayList<String> list=new ArrayList<String>();
list.add("date1");
list.add("date2");
list.add("date3");
list.add("date4");
for(Object obj:list){
System.out.println(obj);
}
}
}
!!!!!!需要特别注意的是foreach循环只可以遍历,不可以改变元素。