Java學習:迭代器簡介


迭代器

java.util.Iterator接口:迭代器(對集合進行遍歷)

有兩個常用的方法

  • boolean hasNext() 如果仍有元素可以迭代,則返回 true。

判斷集合中還有沒有下一個元素,有就返回true,沒有就返回false。

  • E next() 返回迭代的下一個元素

取出集合中的下一個元素

Iterator迭代器,是一個接口,我們無法直接使用,需要使用Iterator接口的實現類對象,獲取實現類的方式比較特殊

Collection接口中有一個方法,叫iterator(),這個方法返回的就是迭代器的實現類對象

  • Iterator<E> interator() 返回在此 collection的元素上進行迭代的迭代器。


迭代器的使用步驟(重點):

  1. 使用集合中的方法iterator()獲取迭代器的實現類對象使用Iterator接口Iterator接口接受(多態)
  2. 使用Iterator接口中的方法hasNext判斷還沒有沒有下一個元素
  3. 使用Iterator接口中的方法next取出集合中的下一個元素
//創建一個集合對象    
Collection<String> coll = new ArrayList();
//向集合中添加元素
coll.add("cai"); coll.add("niao"); /* 1.使用集合中的方法iterator()獲取迭代器的實現類對象,使用Iterator接口Iterator接口接收(多態) 注意: Iterator<E>接口也是有泛型的,迭代器的泛型跟着集合走,集合是什么泛型,迭代器就是什么泛型 */ //多態 接口 實現類對象 Iterator<String> it = cool.interator while(it.hasNext()){//判斷集合有沒有下一個元素,從-1開始 String e = it.next();//取出下一個元素並把指針后移一位  System.out.println(e); }

 

 

增強for循環

增強for循環:底層使用的也是迭代器,使用for循環的格式,簡化了迭代器的書寫
是JDK1.5之后出現的新特性

  • Collection<E> extends Iterator<E>:所有的單列集合都可以使用增強for
  • public interface Iterable<T> 實現這個接口允許對象成為“foreach”語句目標。

增強for循環:用來遍歷集合和數組

格式

for (集合/數組的數據類型 變量名 : 集合名/數組名){
  System.out.println(變量名);
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM