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 }