Tableaux2D - 420111aut25/cours420111 GitHub Wiki
🧮 Les tableaux 2D en Java
Un tableau 2D permet de stocker des valeurs dans un tableau de tableaux — comme un tableau à double entrée, ou matrice.
C’est très utile pour représenter des grilles, tableaux de données, plateaux de jeu, etc.
🏗️ Déclaration et création
✏️ Déclarer un tableau 2D
int[][] matrice;
🛠️ Créer un tableau 2D
matrice = new int[3][4]; // 3 lignes, 4 colonnes
Ou tout en une ligne :
int[][] matrice = new int[3][4];
💡 Tous les éléments sont initialisés à 0 (ou à la valeur par défaut du type).
🧊 Accès aux éléments
On accède à un élément avec 2 indices : [ligne][colonne]
matrice[0][2] = 7; // Affecte 7 à la ligne 0, colonne 2
System.out.println(matrice[0][2]); // Affiche 7
❌ Hors limites ? → ArrayIndexOutOfBoundsException
🪞 Initialisation rapide
On peut remplir un tableau 2D directement :
int[][] matrice = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
📏 Taille d’un tableau 2D
Expression | Signification |
---|---|
matrice.length |
Nombre de lignes |
matrice[0].length |
Nombre de colonnes (ligne 0) |
⚠️ Les tableaux 2D peuvent être irréguliers (pas le même nombre de colonnes partout).
🧪 Exemples simples
int[][] grille = new int[2][3];
grille[0][0] = 1;
grille[1][2] = 9;
System.out.println(grille[1][2]); // 9
System.out.println(grille.length); // 2 lignes
System.out.println(grille[0].length); // 3 colonnes
🔥 À retenir
- Un tableau 2D est un tableau de tableaux.
- On accède à une case avec [ligne][colonne].
.length
fonctionne à chaque niveau (matrice.length
,matrice[i].length
).- Attention aux indices hors limites et aux lignes irrégulières.
int
🔹 Exercice 1 : Matrice de Crée un tableau 2D matrice
de 2 lignes et 3 colonnes, et affecte les valeurs suivantes :
1 2 3
4 5 6
Puis affiche l'élément qui contient un 5.
public class Exo1 {
public static void main(String[] args) {
// Déclaration et création
// Affectation manuelle
// Affichage d’un élément
}
}
Sortie attendue
Élément : 5
String
🔹 Exercice 2 : Grille de Initialise directement un tableau 2D mots
avec les valeurs suivantes :
"Bonjour" "le"
"monde" "!"
Puis affiche le mot "monde" à l’aide de ses indices.
public class Exo2 {
public static void main(String[] args) {
// Initialisation rapide
// Affichage du mot "monde"
}
}
Sortie attendue
Mot : monde
boolean
et .length
🔹 Exercice 3 : Tableau 2D de Un tableau cases
indique si certaines cases d’un jeu sont accessibles (true
) ou bloquées (false
).
Initialise le tableau suivant :
{
{true, false, true},
{true, true, false}
}
Puis affiche :
- Le nombre de lignes
- Le nombre de colonnes de la première ligne
- L’état de la dernière case de la premier ligne
public class Exo3 {
public static void main(String[] args) {
// Initialisation du tableau
// Affichage des informations
}
}
Sortie attendue
Lignes : 2
Colonnes : 3
Dernière case de la première ligne accessible ? true