State State

1. L’exemple initial

Le code suivant est celui de l’énumération StateEnum  et de la classe Queue. Cette dernière gère une structure de données de type file, à savoir qui ajoute un élément au sommet de la structure et enlève un élément à la base de celle-ci. Son attribut state typé par l’énumération StateEnum contient la valeur de l’état courant de la file : vide (EMPTYSTATE), pleine (FULLSTATE) ou ni vide ni pleine (NORMALSTATE).

La méthode enqueue ajoute un élément si la file n’est pas pleine. Dans ce cas, elle met à jour l’état après l’ajout. Si la variable top est égale à MAXSIZE alors la file est pleine.

La méthode dequeue retire un élément si la file n’est pas vide. Cette méthode provoque un décalage des valeurs présentes dans la file. Ensuite, elle met à jour l’état après le retrait. Si la variable top est égale à 0 alors la file est vide.

enum StateEnum  { 
    EMPTYSTATE, NORMALSTATE, FULLSTATE 
} 
 
public class Queue { 
    protected final static int MAXSIZE = 10; 
    protected int buffer[] = new int[MAXSIZE]; 
    protected int top = 0; 
    protected StateEnum state = StateEnum.EMPTYSTATE; 
 
 ...
couv_EI5DES.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Chain of Responsibility
Suivant
Observer