インタフェースListIterator<E>

型パラメータ:
E - このリスト・イテレータによって返される要 のタイプ
すべてのスーパー・インタフェース:
Iterator<E>

public interface ListIterator<E> extends Iterator<E>
リスト用のイテレータ。プログラマがいずれかの方向にリストをトラバースしたり、イテレーション時にリストを変更したり、イテレータのリスト内での現在の位置を取得したりできます。 ListIteratorには現在の要 がありません。そのカーソル位置は常に、previous()呼出しによって返される要 と、next()呼出しによって返される要 との間にあります。 長さnのリストのイテレータには、次のキャレット(^)で示すように、n+1個のカーソル位置があり得ます。
                      Element(0)   Element(1)   Element(2)   ... Element(n-1)
 cursor positions:  ^            ^            ^            ^                  ^
 
remove()メソッドとset(Object)メソッドは、カーソル位置によっては定義されていません。これらのメソッドは、next()またはprevious()の呼出しによって返された最後の要 を処理するように定義されています。

このインタフェースは、Java Collections Frameworkのメンバーです。

導入されたバージョン:
1.2
関連 目:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    add(E e)
    指定された要 をリストに挿入します(オプションの操作)。
    boolean
    リストを 方向にトラバースしたときに、このリスト・イテレータがさらに要 を持っている 合にtrueを返します。
    boolean
    リストを逆方向にトラバースしたときに、このリスト・イテレータがさらに要 を持っている 合にtrueを返します。
    リスト内の次の要 を返し、カーソル位置を前に進めます。
    int
    次にnext()を呼び出したときに返されることになる要 のインデックスを返します。
    リスト内の前の要 を返し、カーソル位置を逆方向に移動します。
    int
    次にprevious()を呼び出したときに返されることになる要 のインデックスを返します。
    void
    next()またはprevious()によって返された最後の要 をリストから削除します(オプションの操作)。
    void
    set(E e)
    next()またはprevious()から最後に返された要 を指定された要 で置き換えます(オプションの操作)。

    インタフェースjava.util.Iteratorで宣言されたメソッド

    forEachRemaining
  • メソッドの詳細

    • hasNext

      boolean hasNext()
      リストを 方向にトラバースしたときに、このリスト・イテレータがさらに要 を持っている 合にtrueを返します。 (つまり、next()が例外をスローするのではなく要 を返す 合は、trueを返します。)
      定義:
      hasNext、インタフェースIterator<E>
      戻り値:
      リストを 方向にたどったときに、リスト・イテレータがさらに要 を持っている 合はtrue
    • next

      E next()
      リスト内の次の要 を返し、カーソル位置を前に進めます。 このメソッドは、リストを反復するために繰返し呼び出される 合と、前後に移動するためにprevious()の呼び出しと組み合わされる 合があります。 (nextpreviousの呼出しを交互に行うと、繰返し同じ要 が返されます。)
      定義:
      next、インタフェースIterator<E>
      戻り値:
      リストの次の要 
      スロー:
      NoSuchElementException - 反復処理で次の要 がない 合
    • hasPrevious

      boolean hasPrevious()
      リストを逆方向にトラバースしたときに、このリスト・イテレータがさらに要 を持っている 合にtrueを返します。 (つまり、previous()が例外をスローするのではなく要 を返す 合は、trueを返します。)
      戻り値:
      リストを逆方向にたどったときに、リスト・イテレータがさらに要 を持っている 合はtrue
    • previous

      E previous()
      リスト内の前の要 を返し、カーソル位置を逆方向に移動します。 このメソッドは、リストを逆方向に反復するために繰返し呼び出される 合と、前後に移動するためにnext()の呼び出しと組み合わされる 合があります。 (nextpreviousの呼出しを交互に行うと、繰返し同じ要 が返されます。)
      戻り値:
      リストの前の要 
      スロー:
      NoSuchElementException - 反復処理で前の要 がない 合
    • nextIndex

      int nextIndex()
      次にnext()を呼び出したときに返されることになる要 のインデックスを返します。 (リスト・イテレータがリストの末尾にある 合はリストのサイズを返します。)
      戻り値:
      次にnextを呼び出したときに返されることになる要 のインデックス。リスト・イテレータがリストの最後にある 合はリストのサイズ
    • previousIndex

      int previousIndex()
      次にprevious()を呼び出したときに返されることになる要 のインデックスを返します。 (リスト・イテレータがリストの先 にある 合は -1を返します。)
      戻り値:
      次にpreviousを呼び出したときに返されることになる要 のインデックス。リスト・イテレータがリストの先 にある 合は -1
    • remove

      void remove()
      next()またはprevious()によって返された最後の要 をリストから削除します(オプションの操作)。 この呼出しはnextまたはpreviousの呼び出しごとに1回 け行うことができます。 この呼出しは、前回のnextまたはpreviousの呼出し以降にadd(E)が呼び出されていない 合に け行うことができます。
      定義:
      remove、インタフェースIterator<E>
      スロー:
      UnsupportedOperationException - removeオペレーションがこのリスト・イテレータでサポートされない 合
      IllegalStateException - nextpreviousのどちらも呼び出されていない 合、あるいはnextまたはpreviousの最後の呼出し後にremoveまたはaddが呼び出された 合
    • set

      void set(E e)
      next()またはprevious()から最後に返された要 を指定された要 で置き換えます(オプションの操作)。 この呼出しは、前回のnextまたはpreviousの呼出し以降にremove()add(E)のどちらも呼び出されていない 合に け行うことができます。
      パラメータ:
      e - nextまたはpreviousによって返された最後の要 を置き換える要 
      スロー:
      UnsupportedOperationException - setオペレーションがこのリスト・イテレータでサポートされない 合
      ClassCastException - 指定された要 のクラスが原 で、このリストにその要 を追 できない 合
      IllegalArgumentException - 指定された要 のある特性が原 で、このリストにその要 を追 できない 合
      IllegalStateException - nextpreviousのどちらも呼び出されていない 合、あるいはnextまたはpreviousの最後の呼出し後にremoveまたはaddが呼び出された 合
    • add

      void add(E e)
      指定された要 をリストに挿入します(オプションの操作)。 要 は、next()によって返される要 (ある 合)の直前、およびprevious()によって返される要 (ある 合)の直後に挿入されます。 (リストに要 がない 合は、新しい要 がリストの唯一の要 になります。) 新しい要 は、暗黙のカーソルの前に挿入されます。後続のnextの呼出しは影響を受けず、後続のpreviousの呼出しは新しい要 を返します。 (この呼出しは、nextIndexまたはpreviousIndexの呼出しによって返される値を1増やします。)
      パラメータ:
      e - 挿入する要 
      スロー:
      UnsupportedOperationException - addメソッドがこのリスト・イテレータでサポートされない 合
      ClassCastException - 指定された要 のクラスが原 で、このリストにその要 を追 できない 合
      IllegalArgumentException - この要 のある特性が原 で、このリストにその要 を追 できない 合