1. ホーム
  2. java

[解決済み] Java Iterator on Doubly-linked-list

2022-02-04 10:22:04

質問

こんにちは、私はJavaの初心者ですが、以下のような問題があります。 ダブリーリンクリスト . をどのように書けばいいのかわかりませんでした。 public E next() メソッドを使用して 二重リンクリスト .

どんなことでもご相談ください。

  private class DoubleListIterator implements Iterator<E> {
    // instance variable
    private Node current=head;
    private Node last;
    private int index=0;

    public boolean hasNext() {
      return index < N;
    }
    public E next() {
        if (!hasNext()) throw new NoSuchElementException();

    }
    public void remove() { throw new UnsupportedOperationException(); }
  }// end class ListIterator

解決方法は?

これを試してみてください。

public boolean hasNext() {
  return current != null;
}
public E next() {
    if (!hasNext()) throw new NoSuchElementException();
    E tmp = current.item;
    current = current.next;  // if next is null, hasNext will return false.
    return tmp;
}

また、ドロップ lastindex は必要ありません。