Java Iterator实现导致编译错误

0 java iterator

我不确定如何将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();

aio*_*obe 5

您可能需要改变(){}下面的代码片段:

public java.util.Iterator iterator()
(
    return new LRIterator() ;
)
Run Code Online (Sandbox Code Playgroud)

一些额外的指示.

  • 我建议你不要使用原始类型,Iterator而是使用Iterator<T>如果你的列表包含类型的元素T.

  • 我建议你让你的类具有该iterator()方法实现Iterable<T>接口.这允许您的类的用户例如在每个循环中使用它.