(1)Iterator迭代器应用实例:
import java.util.*;
public class array {
public static void main(String[] args)
{
ArrayList a=new ArrayList();
a.add(new Poind(3,4));
a.add(new Poind(3,6));
a.add(new Poind(3,5));
a.add(new Poind(6,7));
Iterator it=a.iterator(); //由接口间接实例对象,a.iterator返回一个Iterator;
it.next(); //返回一个元素到迭代器
it.remove(); //删除迭代器中上一个元素的返回值;
while(it.hasNext())
System.out.println(it.next()); //打印输出跌带器每个元素的值;
}
}
class Poind{
int x,y;
Poind(int x,int y)
{
this.x=x;
this.y=y;
}
public String toString()
{
return "x="+x+" "+"y="+y;
}
}
(2)Iterator优点(可创建一个方法直接打印输出一个数据集合中所有的元素)
import java.util.*;
public class array {
public static void ptintElements(Collection c) //以一个集合接口对象为参数;
{
Iterator i=c.iterator(); //可用接口定义一个空对象;
while(i.hasNext())
System.out.println(i.next());
}
public static void main(String[] args)
{
ArrayList a=new ArrayList();
a.add(new Poind(3,4));
a.add(new Poind(3,6));
a.add(new Poind(3,5));
a.add(new Poind(6,7));
array.ptintElements(a);
}
}
class Poind{
int x,y;
Poind(int x,int y)
{
this.x=x;
this.y=y;
}
public String toString()
{
return "x="+x+" "+"y="+y;
}
}
(3)如果应用Java集合框架,很多时候都会用到Iterator接口类型的对象对集合中的元素进行遍历。但寻遍Java API帮助文档,却找不到任何类实现了Iterator接口。那么到底是谁实现了这个接口呢?
其实,因为不同集合实现类后台工作的数据结构有所不同,所以没有办法用一个类来实现Iterator接口,可以使之适用于所有集合。这样,实现Iterator接口的任务就落到了集合实现类自己身上。
由于实现了Iterator接口的类仅与具体的集合实现类有关,所以这个类被设计成了匿名内部类,也正因为这样我们在帮助文档中看不到这个类的说明。
java集合类(七)Iterator应用实例
最新推荐文章于 2024-05-05 01:36:52 发布