list.arraylist

## Class QueueArrayList

- java.lang.Object
- - list.listinterface.BaseList
  - - list.arraylist.BaseArrayList
    - - list.arraylist.QueueArrayList

- All Implemented Interfaces:
    BaseListInterface, CommonBase, QueueList
  Direct Known Subclasses:
    CircularArrayList

      class QueueArrayList
      extends BaseArrayList
      implements QueueList

  Pole vhodné k implementaci mplementace fronty.

  Užití: instance této třídy lze používat v aplikacích.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `last` Index prvního obsazeného prvku pole.

    - ### Fields inherited from class list.arraylist.BaseArrayList

      `first, store`

    - ### Fields inherited from class list.listinterface.BaseList

      `moveCounter`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `QueueArrayList(int aSize)` Vyrobí instanci třídy QueueArrayList.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `append(Element elem)` Vloží elem za poslední prvek seznamu, běžný prvek se neposune.
    `protected int` | `nextIx(int ix)` Vrátí následující index v kruhovém poli.
    `protected int` | `prevIx(int ix)` Vrátí předcházející index v kruhovém poli.
    `Element` | `remove()` Odstraní běžný prvek.

    - ### Methods inherited from class list.arraylist.BaseArrayList

      `getElement, getSize, moveFirst, setElement`

    - ### Methods inherited from class list.listinterface.BaseList

      `getMoveCounter, resetMoveCounter`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface list.listinterface.BaseListInterface

      `getSize, moveFirst`

    - ### Methods inherited from interface list.listinterface.CommonBase

      `getElement, getMoveCounter, resetMoveCounter, setElement`

- - ### Field Detail

    - #### last

          protected int last

      Index prvního obsazeného prvku pole.

  - ### Constructor Detail

    - #### QueueArrayList

          public QueueArrayList(int aSize)

      Vyrobí instanci třídy QueueArrayList.

      Užití: zejména k inicializaci proměnných typu StackList.

      Parameters:
        `aSize` - požadovaná kapacita seznamu

  - ### Method Detail

    - #### prevIx

          protected int prevIx(int ix)

      Vrátí předcházející index v kruhovém poli.
      Parameters:
        `ix` - index, ke kterému hledáme předchůdce
      Returns:
        předcházející index

    - #### nextIx

          protected int nextIx(int ix)

      Vrátí následující index v kruhovém poli.
      Parameters:
        `ix` - index, ke kterému hledáme následovník
      Returns:
        následující index

    - #### remove

          public Element remove()

      Odstraní běžný prvek.

      Popis: Odebere prvek, na který odkazuje hlava a do hlavy vloží odkaz na další prvek v seznamu. Seznam je zacyklený, takže po odebrání prvku s největším indexem přejde k indexu nejmenšímu.

      Užití: Typ výsledku se řídí specializací typu Element.

      Vyžaduje: not isEmpty

      Splní: not isFull

      Mění: odebere první prvek z neprázdného seznamu.

      Specified by:
        `remove` in interface `BaseListInterface`
      Specified by:
        `remove` in class `BaseList`
      Returns:
        odstraněný běžný prvek

    - #### append

          public void append(Element elem)

      Vloží elem za poslední prvek seznamu, běžný prvek se neposune.

      Popis: Přidá nový prvek do ocasu seznamu. Seznam je zacyklený, takže od prvku s největším indexem přejde k indexu nejmenšímu.

      Užití: Typ výsledku se řídí specializací typu Element.

      Vyžaduje: not isFull

      Splní: not isEmpty

      Mění: přidá nový prvek na konec seznamu.

      Specified by:
        `append` in interface `QueueList`
      Parameters:
        `elem` - nový prvek, který se má přidat na konec seznamu