Contents (hide)
Un tableau ne peut contenir qu'un seul type de variable.
type[] monTableau ;
Lorsque l'on crée un tableau, il faut définir sa taille:
float[] tableau = new float[taille] ;
Il est possible de déclarer et de remplir le tableau simultanément:
int[] tableau = {45,43,10};
La propriété length d'un tableau indique le nombre d'éléments d'un tableau:
monTableau.length
Chaque élément d'un tableau est associé à un index. La numérotation des index commence toujours à 0 et se termine à la taille du tableau - 1. Par exemple, la numérotation des index d'un tableau de 100 éléments commence à 0 et se termine à 99.
Remplir un tableau manuellement:
int[] monTableau = new int[100]; monTableau[0] = random(100); monTableau[1] = random(100); monTableau[2] = random(100); ... // etc monTableau[99] = random(100);
Remplir un tableau avec une boucle
int[] monTableau = new int[100]; for (int i = 0; i < monTableau.length; i=i+1 ) { monTableau[i] = random(100); }
maClasse[] monTableau = new maClasse[5]; for (int i = 0; i < monTableau.length; i=i+1 ) { monTableau[i] = new maClasse(); }
Chaque itération de la boucle imbriquée accède ou modifie une cellule d'un tableau à deux dimensions.
i correspond au numéro de la colonne et j celui la rangée d'une cellule à une itération spécifique.
int colonnes = 5; int rangees = 5; int[][] visage; // tableau 2D void setup(){ size(400,400); smooth(); noStroke(); visage = new int[colonnes][rangees]; // chaque cellule prend comme valeur 0 // Changer la valeur de certaines cellules visage[1][1] = 255; visage[3][1] = 255; visage[1][3] = 255; visage[2][3] = 255; visage[3][3] = 255; } void draw(){ background(255); float largeurColonne = width/colonnes; float hateurRangee = height/rangees; fill(0); for(int i=0 ; i < colonnes ; i++){ for(int j=0 ; j < rangees ; j++){ color couleur = visage[i][j]; fill(couleur); float x = i*largeurColonne; float y = j*hateurRangee; rect( x+1 , y+1 , largeurColonne-2 , hateurRangee-2 ); } } }
Exemple 1: Tableau à deux dimensions
Exemple 2: Tableau 2D de plantes
Chaque itération de la boucle imbriquée suivante permet de comparer tous les éléments entre eux tout en évitant les répétitions.
// Dans cet exemple, "elements" est un tableau qui contient // des objets de type Element for ( int i =0 ; i < elements.length ; i++ ) { Element element_i = elements[i]; for ( int j =i+1 ; j < elements.length ; j++ ) { Element element_j = elements[j]; // Effectuer une comparaison entre element_i et element_j ici }
Exemple: Cercles (collisions)