首页
论坛
图书
开发资料
在线文档
网址
下载
联系我们
 新闻│Java│JavaScript│Eclipse│Eclipse 英文│J2EE│J2ME│J2SE│JSP│Netbeans│Hibernate│JBuilder│Spring│Struts
站内搜索: 请输入搜索关键词

当前页面: 开发资料首页 → Java 专题 → 自已实现Iterator

自已实现Iterator

摘要: 自已实现Iterator

</td> </tr> <tr> <td height="35" valign="top" class="ArticleTeitle">
function TempSave(ElementID) { CommentsPersistDiv.setAttribute("CommentContent",document.getElementById(ElementID).value); CommentsPersistDiv.save("CommentXMLStore"); } function Restore(ElementID) { CommentsPersistDiv.load("CommentXMLStore"); document.getElementById(ElementID).value=CommentsPersistDiv.getAttribute("CommentContent"); } <table width="734" border="0"> <tr> <td width="728"> </td> </tr> </table>
对于自定义的数据结构来说,如果想使用Iterator(迭代器)来遍历数据,就需要定义自己的Iterator。
下面的例子用数组来存储数据。接口Iterator包含三个方法:hasNext()、next()和remove()。remove()方法是可选的。
import java.util.*;
public class ArrayIterator implements Iterator {
protected Object[] data = { "one", "two", "three" };
protected int index = 0;

public ArrayIterator(Object[] d) {
data = d;
}

public ArrayIterator() {
}

public boolean hasNext() {
return (index < data.length);
}

public Object next() { //返回数据结构的下一个元素
if(index>=data.length)
throw new IndexOutOfBoundsException("only "+data.length+" elements");
return data[index++];
}

public void remove() { //删除当前对象,不支持
throw new UnsupportedOperationException("This demo does not implement the remove method");
}

public static void main(String args[]){ //测试
ArrayIterator it=new ArrayIterator();
while(it.hasNext())
System.out.println(it.next());
}
}

运行结果:
C:\java>java ArrayIterator
one
two
three
</td> </tr> <tr>


↑返回目录
前一篇: 格式化输出日期和时间
后一篇: 打印日期的三种方法

首页 | 全站 Sitemap | 联系我们 | 设为首页 | 收藏本站
版权所有 Copyright © 2006-2007, Java 编程资料牛鼻站, All rights reserved