Accès aux éléments des tableaux 2D
Fait partie de la section Logique & Flux du Journey Java de Coddy — leçon 2 sur 59.
L'accès aux éléments d'un tableau 2D est similaire à l'accès aux éléments d'un tableau 1D, mais au lieu d'utiliser un seul indice, vous utilisez deux indices : un pour la ligne et un pour la colonne. N'oubliez pas que les indices en Java commencent à 0, donc la première ligne est à l'indice 0, la deuxième ligne est à l'indice 1, et ainsi de suite. De même, la première colonne est à l'indice 0, la deuxième colonne est à l'indice 1, et ainsi de suite.
Pour accéder à un élément, vous spécifiez d'abord l'indice de la ligne, puis l'indice de la colonne, en utilisant la syntaxe suivante :
arrayName[rowIndex][columnIndex]Par exemple, pour accéder à l'élément dans la deuxième ligne (indice 1) et troisième colonne (indice 2) d'un tableau 2D nommé matrix, vous écririez :
int element = matrix[1][2];Cela affecterait la valeur de l’élément à la ligne 1, colonne 2 à la variable element.
Obtenir les dimensions d'un tableau 2D :
Tout comme pour les tableaux 1D, vous pouvez utiliser .length pour obtenir les dimensions d'un tableau 2D :
int[][] matrix = {
{1, 2, 3},
{4, 5, 6}
};
int numRows = matrix.length; // Gets number of rows: 2
int numCols = matrix[0].length; // Gets number of columns: 3matrix.lengthretourne le nombre de lignesmatrix[0].lengthretourne le nombre de colonnes dans la première ligne
Vérification des bornes :
Avant d'accéder à un élément, il est une bonne pratique de vérifier si les indices sont valides :
if (rowIndex >= 0 && rowIndex < matrix.length &&
colIndex >= 0 && colIndex < matrix[0].length) {
// Safe to access matrix[rowIndex][colIndex]
}Défi
FacileCréez une méthode nommée getElement qui prend trois arguments :
- Un tableau 2D d'entiers nommé
matrix. - Un entier
rowIndexreprésentant l'index de ligne. - Un entier
colIndexreprésentant l'index de colonne.
La méthode doit retourner l'élément à la ligne et la colonne spécifiées dans le matrix. Si le rowIndex ou le colIndex est hors limites (c'est-à-dire, inférieur à 0 ou supérieur ou égal au nombre de lignes ou de colonnes), la méthode doit retourner -1.
Aide-mémoire
Pour accéder aux éléments d'un tableau 2D, utilisez deux indices : un pour la ligne et un pour la colonne. Les indices commencent à 0.
Syntaxe :
arrayName[rowIndex][columnIndex]Exemple :
int element = matrix[1][2]; // Obtient l'élément à la ligne 1, colonne 2vous pouvez utiliser .length pour obtenir les dimensions d'un tableau 2D :
int[][] matrix = {
{1, 2, 3},
{4, 5, 6}
};
int numRows = matrix.length; // Obtient le nombre de lignes : 2
int numCols = matrix[0].length; // Obtient le nombre de colonnes : 3Essayez vous-même
// Écrivez votre code uniquement à l'intérieur de la classe. N'écrivez pas main() ni aucun code en dehors de cette classe.
class GetElement {
public static int getElement(int[][] matrix, int rowIndex, int colIndex) {
// Écrivez votre code ici
}
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique & Flux
1Tableaux multidimensionnels
Bases des tableaux 2DAccès aux éléments des tableaux 2DBoucles imbriquées avec les tableaux 2DRécapitulatif - Tableaux 2DAddition et soustraction de matricesTableaux irréguliersTableaux 3D et au-delàMotifs courants des tableaux 2DRécapitulatif - Tout sur les tableaux4HashSet Partie 1
Qu'est-ce qu'un HashSet ?Ajouter un ÉlémentSupprimer un ÉlémentVérifier si un Élément ExisteVide et TailleVider et ClonerRécapitulatif - HashSet7Gestion des erreurs de base
Bases du try-catchBloc finallyLever des exceptionsExceptions personnalisées2HashMap Partie 1
Qu'est-ce qu'une HashMap ?Déclarer une HashMapAccéder aux ValeursVérifier si une Clé ExisteModifier les DictionnairesRécapitulatif - HashMap3HashMap Partie 2
Méthodes HashMapItérer avec keySet()Itérer avec entrySet()HashMap imbriquéRécapitulatif - Gérer l'entrepôtRécapitulatif - Opérations HashMap6Flux de contrôle avancé
Instructions étiquetéesExpression switchAppariement de motifsClauses de gardeRécapitulatif - Flux de contrôle9Projet - Compteur de Mots Uniques
Entrée de Texte et StockageTraitement des Mots