迭代器遍历
迭代器在java中的类是iterator,是集合专用的遍历方式
Collection coll=new ArrayList(); Iterator it=list.iterator();\\创建迭代器对象 while(it.hasnext){//判断当前位置是否有元素 String str= it.next;获取元素并移动指针 System.out.println(); }
细节
1.指针指向末尾还调用next方法会报NoSuchElementException错
2.迭代器遍历完成,指针不会复位,想要遍历需要再获取一个迭代器对象
3.循环中只能用一次next方法
4.迭代器遍历时不能用集合方法进行增加删除
增强for遍历
JDK5之后出现,底层就是一个Iterator迭代器,可以简化迭代器代码
单列集合和数组才能用增强for
格式
for(类型 s:list){ System.out.println(s); }//list是数组或者集合,s是一个局部变量,代表数组中的每一个数据
Lambda表达式遍历
Collection <String> coll=new Arraylist(); //coll.forEach(Consumer<? super E> action) //consumer是一个函数式接口,参数是他的实现类。 coll.forEach( new Consumer<String>(){ @Overide public void accept(String s) System.out.println(s); coll.forEach( s->System.out.println(s)); }