package com.entel.research; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.junit.Before; import org.junit.Test; /** * @author Administrator * 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象 * 迭代器通常被称为“轻量级”对象,因为创建它的代价小。 * iterator()方法是java.lang.Iterable接口,被Collection继承。 */ @SuppressWarnings( { "rawtypes", "unchecked" }) public class IteraotrDemo { List list = new ArrayList(); @Before public void setUp() throws Exception { list.add("zhangsan"); list.add("lisi"); list.add("wangwu"); } @Test public void test1() { for (Iterator iter = list.iterator(); iter.hasNext();)//使用hasNext()检查序列中是否还有元素。 { String str = (String) iter.next();//使用next()获得序列中的下一个元素。 System.out.println(str); } } @Test public void test2() { Iterator iter = list.iterator(); while (iter.hasNext()) { String str = (String) iter.next(); System.out.println(str); } } @Test public void test3() { System.out.println("before---------------->"+list.size()); for (Iterator iter = list.iterator(); iter.hasNext();) { list.remove(0); } System.out.println("after----------------->"+list.size()); } }