zoukankan      html  css  js  c++  java
  • 迭代器

    示例展示:

    package iterator;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    
    /**
     * 迭代器   Iterator
     * @author superdrew
     *         1.专门遍历集合而生,集合里面并没有提供相关遍历的方法
     *         2.提供方法  hasNext() 
     *                  next()
     *                  remove()
     *             使用Iterator进行迭代的时候不能 用list.remove() 会 ConcurrentModificationException
     *                                                       ConcurrentModificationException
     *             删除方法 是用 Iterator提供的remove方法
     *         3.for-each 与 Iterator的联系
     *             for-each遍历集合,底层调用的是 Iterator
     *             凡事能用for-each循环(遍历集合) 也能够使用Iterator
     *         4.for-each 与 Iterator的区别
     *             for-each还能够遍历数组
     *             Iterator只能遍历集合
     *         5.哪些集合能够使用 Iterator
     *         Collection    List  Set  可以
     *             Map        不可以
     *         实现Iterator的集合都可以用 迭代器
     *         6.Iterator是一个接口,具体实现类在哪?
     *             在相应集合的具体实现类中
     *             
     */
    public class TestIterator {
        public static void main(String[] args) {
            List<Integer> list = new ArrayList<Integer>();
            list.add(100);
            list.add(89);
            list.add(92);
            list.add(97);
            
            //使用迭代器
            Iterator<Integer> it = list.iterator();
            while(it.hasNext()){
                int num = it.next();
                if(num<90){
                    it.remove();
                    System.out.print("移除的元素(即<90):" + num);
                }
            }
            System.out.println("
    剩下的元素有:");
            //使用for-each循环 删除元素?
            for (Integer integer : list) {
                System.out.print(integer + " ");
            }
        }
    }

    结果展示:

  • 相关阅读:
    flask框架(一):初入
    .py文件打包成.exe文件
    gtk+-3.21.4 static build step in windows XP
    cairo-1.14.6 static compiler msys mingw32
    ffmpeg-20160811-bin.7z
    gtk+2.24.0-glib-2.28.1-staticLib-mingw32-x86-2016-08-10.7z
    ffmpeg-20160806-bin.7z
    glib-2.49.4-msys-x86-staticLib.7z
    Tesseract-OCR text2image.exe [ x86 支持 XP ]
    ffmpeg-20160803-bin.7z
  • 原文地址:https://www.cnblogs.com/superdrew/p/8082587.html
Copyright © 2011-2022 走看看