在我的程序中,我编写了自己的LinkedList类。还有一个例子,llist。如何实现Iterable
要在foreach循环中使用它,LinkedList需要实现Iterable?
for(Node node : llist) {
System.out.print(node.getData() + " ");
}
这里是我的LinkedList类。请让我知道我该如何使它成为可迭代的?
public class LinkedList implements Iterable {
private Node head = null;
private int length = 0;
public LinkedList() {
this.head = null;
this.length = 0;
}
LinkedList (Node head) {
this.head = head;
this.length = 1;
}
LinkedList (LinkedList ll) {
this.head = ll.getHead();
this.length = ll.getLength();
}
public void appendToTail(int d) {
...
}
public void appendToTail(Node node) {
...
}
public void deleteOne(int d) {
...
}
public void deleteAll(int d){
...
}
public void display() {
...
}
public Node getHead() {
return head;
}
public void setHead(Node head) {
this.head = head;
}
public int getLength() {
return length;
}
public void setLength(int length) {
this.length = length;
}
public boolean isEmpty() {
if(this.length == 0)
return true;
return false;
}
}
JDK是开源的,源代码随它而来。只要看看标准的LinkedList实现就可以得到一个例子。 –
但是,首先您需要阅读关于如何实现接口的一般主题的基本教程。你可以找到一个体面的[**这里**](http://docs.oracle.com/javase/tutorial/java/IandI/createinterface.html)。你不会后悔这样做。 –