java-集合框架3-迭代器的使用
阿新 • • 發佈:2020-07-26
package cn.burce.iterator; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; /* * 集合中的迭代器 獲取集合中的元素 * 介面Iterator:兩個抽象方法 * Boolean hasNext()判斷集合中還有沒有可以取出的元素,如果有返還True * next()取出集合的下一個元素 * Iterator介面,需要實現類 * Collection介面定義方法Iterator Iterator() * ArrayList 重寫Iterator(),返回了Iterator介面實現類的物件 * 使用ArrayList集合的物件 * Iterator it = array.iterator(),執行結果就是Iterator介面實現類的物件 * it是介面的實現類物件,呼叫方法hasNext()和next()集合元素迭代*/ public class IteratorLearn { public static void main(String[] args) { Collection<String> c = new ArrayList<String>(); c.add("小明"); c.add("小軍"); c.add("小和"); c.add("小啊"); c.add("123"); // 迭代器對集合ArrayList中的元素取出 // 呼叫集合的方法iterator()獲取出,Iterator介面的是實現類物件Iterator<String> it = c.iterator(); // 介面實現類物件,呼叫方法hasNext()判斷集合中是否有元素 // 並用next()取出元素 while (it.hasNext()) { System.out.println(it.next()); } System.out.println("--------------------------"); for (Iterator<String> it1 = c.iterator(); it1.hasNext();) { System.out.println(it1.next()); } System.out.println("-----------------------------"); // 集合可以儲存任何型別的物件 // 集合中不指定資料型別,那就表示什麼都可以儲存 Collection c1 = new ArrayList(); c1.add("我"); c1.add("wwwwww"); // 迭代器獲取 Iterator it2 = c1.iterator(); while (it2.hasNext()) { System.out.println(it2.next());// 列印的這個是Object型別 String s = (String) it2.next();// 取長度需要向下轉型 System.out.println(s.length());// 儘量加資料型別 } } }