JAVA学习笔记之十三---迭代器


1.什么是迭代器?

迭代器iterator是位于collection接口中的类,可以方便遍历整个集合中的数据

2.迭代器如何去使用?

2.1 迭代器的基本使用

Collection collection = new ArrayList();  //创建一个ArrayList集合

collection.add("hello1");//像集合中插入数据

collection.add("hello2");

Iterator iterator = collection.iterator();//创建迭代器

//然后可以调用迭代器中的next()方法挨个输出

iterator.next();

//next()方法的原理实现就是  定义了一个计数器count = 0 ;每调用一次next操作,count就会加一,然后执行get(count)的操作

2.2迭代器中的hasNext()方法

iterator中的hasNext方法的返回值为boolean类型,用于判断集合中是否含有元素

所以我们遍历整个集合中的数据时,就可以用下面这种方法:

while(iterator.hasNext()){

System.out.println(iterator.next());}

3.手写一些东西

3.1 next()方法的底层实现

 3.2hasNext()方法的底层实现

 4.List集合中的特有的迭代器listIterator()

该迭代器可以实现从头到尾的遍历或者是实现从尾部到头部的遍历(正序或者逆序遍历)

 ★注意:顺序输出和逆序输出底层都使用了同一个计数器count

当我们没有使用listIterator.next()正序输出时

直接使用listIterator.previous()方法是 会直接报错的