1
我目前正在研究链接列表和迭代器(使用Lafore的)。链接列表迭代器Java
我不确定为什么我们首先需要迭代器。
说你的班级链接如下所示。
class Link{
public int iData; // data
public double dData; /d/ data
public Link next; //reference to next link
//----------------------------------
public Link(int id, double dd){
iData = id; //initialize data
dData = dd;// 'next' is automatically set to null.
}
//----------------------------------
public void displayLink(){
System.out.print("{"+iData+", "+dData+"} ");
}
//----------------------------------
}//end class Link
而且你的链表类有一个场链接第一和一些操作的列表。
我的问题是
为什么我不能只是一个int变量(例如:诠释计数;)作为链接类中的字段,然后就增加它时,它被称为构建一个整体,而不是类,称为迭代器,只是为了在列表中来回遍历?
书上说这种方法
的一个问题是,你可能需要 比一个参考更多,就像你经常同时使用多种阵列 指数。
这是什么意思?你能举出一个什么时候发生这个问题的例子吗?
预先感谢您。
java中有内建数组列表为什么不看一下它,你可以在指定的位置插入所有操作,也可以动态地插入。 – SmashCode
当然,你可以做到这一点。也许更好的问题是:迭代器模式的动机是什么?模式是面向对象编程中常见问题的解决方案。以下是Iterator的动机:https://sourcemaking.com/design_patterns/iterator – duffymo
您可能需要查看[this](http://www.journaldev.com/1716/iterator-design-pattern-in-java-示例教程)欣赏迭代器模式。 – SomeDude