package cn.zhou.com; import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator; /*
* 一、迭代 是啥?
*
* 取元素 不管是什么数据结构 用一个共性的方法 一个一个的取。
* 取之前,先判断 。有,取一个。没有 ,结束!
*
* 创建集合对象
*
* 取出方式!
*
* 二、细节!
* 1.集合中储存的其实都是对象的地址。
*
* 2.集合中不能储存基本数据类型
* coll.add(3);---不会报错 因为在class文件中 生成的是 coll.add(Integer.Valueof(3));【 就是自动装箱!】
*
* 3.存储时提升了object,取出时使用元素的特有内容,需要使用元素的特有方法时 进行向下转型!
* 需要使用元素的特有方法时 进行向下转型!
*
* 三、获得存储元素的长度!----->子类型的特有方法!
* coll.add("asAS");---这里面存储的是对象 需要向下转型 才能获取长度!
*/
public class 迭代 {
public static void main(String[] args) { //创建集合对象!
Collection coll=new ArrayList();
coll.add("a183");//--------------------------->提升为object
coll.add("b123");
coll.add("c123");
coll.add("d123"); //获取容器的迭代器对象,通过iterator方法
// Iterator it=coll.iterator(); //使用具体的迭代器对象获取集合中的元素。调用迭代器的方法!3个
/* while(it.hasNext()){
System.out.println(it.next());
}*/
for (Iterator it = coll.iterator(); it.hasNext();) {
Object object = it.next();
String str=(String)object; // 都是对象 获取不来长度,向下转型!通过子类实现!
System.out.println("元素长度"+str.length()); }
}
}