Iterator接口的简单用法

来源:互联网 发布:电脑硬盘坏了 数据恢复 编辑:程序博客网 时间:2024/06/05 03:00

Iterator迭代接口是专门用来进行迭代输出的接口,定义如下:

public interface Iterator<E>{ }

Iterator 接口提供的常用方法如下:

序号常用方法说明1public boolean hasNext()判断集合是否有下一个元素2pulbic E next()取出当前元素3public void remove()删除当前元素
Iterator 接口本身没有子类,因此要取得该接口的实例,需要采用Collection 接口中的 iterator() 方法来实例化。

实例化 Iterator 接口:

Iterator<E> 对象名 = Collection 接口对象名.iterator()

示例如下:

package com.demo;import java.util.ArrayList;import java.util.Iterator;import java.util.List;class USACO2  {     private double discharge;     private String src;     public USACO2(String src, double discharge){     this.src = src;     this.discharge = discharge;     }           public String toString(){    return "排放源: " +src + "  排放量:"+ discharge;    }    public boolean equals(Object obj){    if(this == obj){    return true;    }    if(!(obj instanceof USACO2)){    return false;    }    USACO2  usa = (USACO2)obj;    if(this.src.equals(usa.src) && this.discharge == usa.discharge)    return true;    return false;    }}public class demo   {public static void main(String[] args){         List<USACO2> myList = new ArrayList<USACO2>();         Iterator<USACO2> iter = null;         myList.add(new USACO2("空气", 2509));         myList.add(new USACO2("制冰", 3429));         myList.add(new USACO2("热空调", 21109));         myList.add(new USACO2("热水", 4212));         USACO2 usa = null;         usa = new USACO2("制冰", 3429);         iter = myList.iterator(); //要先创建集合实例化         while(iter.hasNext()){         if(iter.next().equals(usa))         iter.remove();        }         iter = myList.iterator();  //修改集合之后,需要重新 实例化迭代器接口while(iter.hasNext()){System.out.println(iter.next());}}}
输出如下:

排放源: 空气  排放量:2509.0
排放源: 热空调  排放量:21109.0

排放源: 热水  排放量:4212.0

注意:必须在创建集合之后才能实例化 Iterator 接口, 否则将出现错误.






0 0
原创粉丝点击