Iterator接口用法

1.所有实现Collection接口的容器类都有一个iteractor方法,用于返回一个实现了Iteractor接口的对象, 
2.Iteractor对象成为迭代器,用以实现对容器内元素的遍历操作 
3.Iteractor接口定义了三个方法 hasNext(), next(), remove();

这里写图片描述

例子:

public class Demo {

    public static void main(String[] args) {
        iterList();
        iterSet();
        iterMap();
    }

    private static void iterList() {
        List<String> list = new LinkedList<String>();
        list.add("java1");
        list.add("Android1");
        list.add("IOS1");
        /**List的迭代*/
        for (Iterator<String> iterator = list.iterator(); iterator.hasNext();) {
            String str = (String) iterator.next();
            System.out.println(str);
        }
    }
    /**List方法打印结果如下:*/
    //java1
    //Android1
    //IOS1

    private static void iterSet() {
        Set<String> set = new HashSet<String>();
        set.add("java2");
        set.add("java2");
        set.add("IOS2");
        /**Set的迭代*/
        for (Iterator<String> iterator = set.iterator(); iterator.hasNext();) {
            String str = iterator.next();
            System.out.println(str);
        }
    }
    /**Set方法打印结果如下:*/
    //java2
    //IOS2

    private static void iterMap() {
        Map<String, String> map = new HashMap<String, String>();
        map.put("key_1", "java3");
        map.put("key_2", "Android3");
        map.put("key_3", "ios3");
        /**Map迭代键key和值value  map.entrySet()返回此映射中包含键值映射关系的Set视图*/
        Iterator<Entry<String, String>> iter = map.entrySet().iterator();
        while (iter.hasNext()) {//是否有元素
            Entry<String, String> entry = iter.next();//返回元素
            String key = entry.getKey();
            String value = entry.getValue();
            System.out.println(key + " : " + value);
            //iter.remove();//删除元素
        }
        // System.out.println(map.size());
        /**Map迭代键key map.keySet()返回此映射中包含的键的Set视图*/
        Iterator<String> keyIter = map.keySet().iterator();
        while (keyIter.hasNext()) {
            String str = keyIter.next();
            System.out.println(str);
        }
    }
    /**Map方法打印结果如下:*/
    //key_3 : ios3
    //key_2 : Android3
    //key_1 : java3

    //key_3
    //key_2
    //key_1
}
原文地址:https://www.cnblogs.com/a8457013/p/8557167.html