1 package cn.zhou.com; 2 3 import java.util.ArrayList; 4 import java.util.Collection; 5 import java.util.Iterator; 6 7 /* 8 * 一、迭代 是啥? 9 * 10 * 取元素 不管是什么數據結構 用一個共性的方法 一個一個的取。 11 * 取之前,先判斷 。有,取一個。沒有 ,結束! 12 * 13 * 創建集合對象 14 * 15 * 取出方式! 16 * 17 * 二、細節! 18 * 1.集合中儲存的其實都是對象的地址。 19 * 20 * 2.集合中不能儲存基本數據類型 21 * coll.add(3);---不會報錯 因為在class文件中 生成的是 coll.add(Integer.Valueof(3));【 就是自動裝箱!】 22 * 23 * 3.存儲時提升了object,取出時使用元素的特有內容,需要使用元素的特有方法時 進行向下轉型! 24 * 需要使用元素的特有方法時 進行向下轉型! 25 * 26 * 三、獲得存儲元素的長度!----->子類型的特有方法! 27 * coll.add("asAS");---這里面存儲的是對象 需要向下轉型 才能獲取長度! 28 */ 29 public class 迭代 { 30 public static void main(String[] args) { 31 32 //創建集合對象! 33 Collection coll=new ArrayList(); 34 coll.add("a183");//--------------------------->提升為object 35 coll.add("b123"); 36 coll.add("c123"); 37 coll.add("d123"); 38 39 //獲取容器的迭代器對象,通過iterator方法 40 // Iterator it=coll.iterator(); 41 42 //使用具體的迭代器對象獲取集合中的元素。調用迭代器的方法!3個 43 /* while(it.hasNext()){ 44 System.out.println(it.next()); 45 }*/ 46 for (Iterator it = coll.iterator(); it.hasNext();) { 47 Object object = it.next(); 48 String str=(String)object; // 都是對象 獲取不來長度,向下轉型!通過子類實現! 49 System.out.println("元素長度"+str.length()); 50 51 } 52 } 53 }