1

リンクされたリストに基づいてキューの実装を構築します。次の 2 つのエラーのため、アプリケーションを実行できません。

public class Queue<Integer> implements Iterable<Integer> {
    ...
    public Iterator<Integer> iterator()  {
            return new ListIterator(first);
        }
    private class ListIterator<Integer> implements Iterator<Integer> {// error #1
            private Node<Integer> current;

            public ListIterator(Node<Integer> first) {
                current = first;
            }

            public boolean hasNext(){ return current != null;                   }
            public void remove()    { throw new UnsupportedOperationException();}

            public int next() { // error #2
                if (!hasNext()) throw new NoSuchElementException();
                int item = current.item;
                current = current.next;
                return item;
            }
        }    
     }

エラー #1:エラー: Queue.ListIterator は抽象的ではなく、Integer が型変数であるイテレーターの抽象メソッド next() をオーバーライドしません: 整数は、クラス Queue.ListIterator で宣言されたオブジェクトを拡張します

エラー #2:エラー: Queue.ListIterator の next() は Iterator の next() を実装できません 戻り値の型 int は、E、Integer が型変数である Integer と互換性がありません: E は、インターフェイス Iterator で宣言されたオブジェクトを拡張します Integer は、クラスで宣言されたオブジェクトを拡張しますQueue.ListIterator

それを機能させる方法は?

4

1 に答える 1