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

    public class Demo1{
      public static void main(String[] args){
        Collection collection = new ArrayList<>();
        collection.add("java");
        collection.add("hello");
        
        testIterator(collection);
        
      }
      public static void testIterator(Collection collection){
      //Iterator<E> iterator() //获取集合中的对象
       /*
       * Iterator:叫迭代器
       * hasnext():判断当前位置是否有值,有返回true,没有false
       * next():取出当前位置的值,并将指针指向下一个位置
       */
      Iterator iterator  = collection.Iterator();
        while(iterator.hasNext()){
          String value = (String)iterator.next();
          System.out.println(value);
        }
      //注意点:
      //1.直接再次使用第一次的iterator进行遍历,遍历失败.因为当前指针已经指向了集合的最后.
      //再次使用hasnext会直接返回false.所以如果想再次遍历,要重新获取迭代器对象.
       while (iterator.hasNext()) {
       String value = (String) iterator.next();
       System.out.println("iterator1:"+value);
      }
    
      //2.注意:集合可以存储引用数据类型.可以存储不同的数据类型
      collection.add(2);
      //3.再次遍历--当集合中同时存在不同类型的数据时,需要进行容错处理和向下转型.
      Iterator iterator2 = collection.Iterator();
        while(iterator2.hasNext){
          Object obj = iterator.next();
          if(obj instanceOf String){
            System.out.println(obj);
          }
    }
    }
    }
  • 相关阅读:
    javascript闭包函数
    取消后续内容执行
    vs安装失败,发生严重错误,错误号:Error 0x80070643
    ref
    深入类的方法
    学习过程中的三个小小程序
    SQL Server 中存储过程的练习
    SQL Server系统存储过程
    SQL-server的事务,视图和索引
    用C#,SQL Server编写的音乐播放软件
  • 原文地址:https://www.cnblogs.com/yumengfei/p/10977021.html
Copyright © 2011-2022 走看看