我不确定如何将Iterator代码添加到我的DLL类中
我尝试了两种方法但在两种情况下都遇到了编译错误:
public static void main(String[] args)
{
DLL myList = new DLL() ;
...
public java.util.Iterator iterator()
(
return new LRIterator() ;
)
private class LRIterator implements Iterator
{
...
}
...
Run Code Online (Sandbox Code Playgroud)
编译错误: ';' expected public java.util.Iterator iterator();
其他方法:
public static void main(String[] args)
{
DLL myList = new DLL() ;
...
Iterator itr = myList.iterator();
while(itr.hasNext()) {
Object element = itr.next();
System.out.print(element + " ");
}
...
Run Code Online (Sandbox Code Playgroud)
复制错误: cannot find symbol Iterator = myList.iterator();
您可能需要改变(
和)
成{
和}
下面的代码片段:
public java.util.Iterator iterator()
(
return new LRIterator() ;
)
Run Code Online (Sandbox Code Playgroud)
一些额外的指示.
我建议你不要使用原始类型,Iterator
而是使用Iterator<T>
如果你的列表包含类型的元素T
.
我建议你让你的类具有该iterator()
方法实现Iterable<T>
接口.这允许您的类的用户例如在每个循环中使用它.