Java接口Iterator常用API详解

Iterator - 测试类

package otherUtilityClass;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class IteratorTest {

    public static void main(String[] args) {

        /**
         * List的iterator();要求返回一个Iterator接口,该接口被ListIterator继承
         * Iterable接口被Collection继承
         *
         * Iterator<泛型> it = 集合.iterator();
         *
         * Iterator是Java迭代器最简单的实现。
         * 它为List设计的ListIterator具有更多的功能,
         * 它可以从两个方向遍历List,也可以从List中插入和删除元素。
         *
         * Iterator接口的next();用于获取序列中的下一个元素
         * Iterator接口的hasNext();用于检查序列中是否还有元素
         * Iterator接口的remove();用于删除迭代器返回的元素
         *
         * Tips:
         * ① 使用remove();时必须跟在previous();或next();之后,且只能执行一次元素移除
         * ② 删多个元素需要多次执行next(); + remove();或previous(); + remove();
         * ③ 执行next();或previous();后不能再执行添加方法(add();),否则所需删除的目标元素会指向不明而抛出异常
         */

        List list = new ArrayList(); // 创建List序列
        list.add("早安"); // 向序列中添加元素
        list.add("午安");
        list.add("晚安");
        Iterator iterator = list.iterator(); // 获取Iterator对象
        while (iterator.hasNext()) { // 遍历Iterator对象中的元素
            System.out.print(iterator.next() + "    "); // 输出Iterator对象中的值
        }
        
        iterator.remove(); // 删除Iterator对象中的元素,此处仅删除由iterator.next();返回的最后一个元素

        if (list.size() != 0) {
            System.out.print("\n\n经remove();后序列中的元素:");
            for (String items : list) {
                System.out.print(items + "    ");
            }
        } else {
            System.out.println("\n\n当前序列的规格长度为:" + list.size() + ",该序列中已不存在任何元素!");
        }

    }

}

运行示范

早安    午安    晚安    

经remove();后序列中的元素:早安    午安  

你可能感兴趣的:(与子共适,Java,Iterator,API,测试编写)