Dans l’article précédent sur Groovy, nous avons vu comment itérer sur chaque élément d’un tableau ou d’une liste.
Par contre, j’ai oublié de vous indiquer comment créer un tableau de taille dynamique.
Et si on ne sait pas créer un tableau ben ça nous fait une belle jambe de savoir comment boucler sur chacun de ses éléments.
Je vous propose donc regarder plus en détail la classe ArrayList.


Table des matières :

Logo de Groovy créer liste

Logo de Groovy

Comment déclarer votre tableau?

Pour cela, il suffit de déclarer une nouvelle variable de type ArrayList.

//Définition d’un tableau de string
ArrayList list1= new ArrayList();

ArrayList implémente un tableau d’objets qui adapte sa taille automatiquement au nombre d’objets qu’il contient.
ArrayList peut contenir n’importe quel type d’objets. Une donnée est forcément un objet.

Groovy est suffisamment permissif pour nous permettre de déclarer notre tableau de différentes manières:

ArrayList list1= new ArrayList();

ou

Def maListe= new ArrayList();

aurait aussi bien fonctionné.
Vous pouvez noter que dans les deux dernières déclaration nous n’avons pas spécifié le type d’objets que contenait notre tableau. Je déconseille cette notation même si elle est juste. Spécifier dès le début le type d’objets que doit contenir notre liste peut nous éviter des erreurs ou des cast inutile par la suite.

Comment insérer des données dans votre tableau ?

Soit avez la méthode add

list1.add(« Lundi »);

Soit en attaquant directement l’emplacement du tableau que vous voulez modifier avec [int]

list1[2] = « Dimanche »;

Comment lire les données du tableau?

Il suffit de boucler sur chaque élément de votre liste.

for(maval in list1){
log.info(maval);
}

(log.info va afficher la valeur de votre variable dans la console).

Comment lire un élément précis du tableau?

En spécifiant le rang de l’élément que vous recherchez. Attention, les rangs commencent à zéro.

log.info(list1[2]);

Comment modifier un élément de votre tableau?

Il suffit d’insérer une nouvelle donnée à la place de l’autre dans la liste. Pour cela, spécifiez à la liste le rang de l’élément que vous voulez modifier en le passant entre crochet ‘[]’

list1[2] = « Dimanche »;

Exemple Complet

Création d’une liste de jours de la semaine, avec modification et affichage des données.

//Création d’une liste de jour de la semaine
//Déclaration de la liste
ArrayList list1 = new ArrayList()

//Ajout des jours de la semaine dans la liste
list1.add(« Lundi »);
list1.add(« Mardi »);
list1.add(« Mercredi »);
list1.add(« Jeudi »);
list1.add(« Vendredi »);

//Affichage de tous les éléments de la liste
for(maval in list1){
log.info(maval);
}
//Affichage du deuxième élément de la liste
log.info(list1[2]);

//Modification du deuxième élément de la liste
list1[2] = « Dimanche »;

//Affichage de tous les éléments de la liste
for(maval in list1){
log.info(maval);
}

Sortie du programme :

Mon Mar 02 17:14:45 CET 2015:INFO:Lundi
Mon Mar 02 17:14:45 CET 2015:INFO:Mardi
Mon Mar 02 17:14:45 CET 2015:INFO:Mercredi
Mon Mar 02 17:14:45 CET 2015:INFO:Jeudi
Mon Mar 02 17:14:45 CET 2015:INFO:Vendredi

Mon Mar 02 17:14:45 CET 2015:INFO:Mercredi

Mon Mar 02 17:14:45 CET 2015:INFO:Lundi
Mon Mar 02 17:14:45 CET 2015:INFO:Mardi
Mon Mar 02 17:14:45 CET 2015:INFO:Dimanche
Mon Mar 02 17:14:45 CET 2015:INFO:Jeudi
Mon Mar 02 17:14:45 CET 2015:INFO:Vendredi


Vous souhaitez en savoir plus? Alors allez jeter un coup d’œil aux articles suivants: