码迷,mamicode.com
首页 > 其他好文 > 详细

迭代器

时间:2017-12-21 23:01:38      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:new   分享   com   集合   pac   调用   示例   数组   联系   

示例展示:

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("\n剩下的元素有:");
        //使用for-each循环 删除元素?
        for (Integer integer : list) {
            System.out.print(integer + " ");
        }
    }
}

结果展示:

技术分享图片

 

迭代器

标签:new   分享   com   集合   pac   调用   示例   数组   联系   

原文地址:http://www.cnblogs.com/superdrew/p/8082587.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!