Menu
Coddy logo textTech

Tableaux irréguliers

Fait partie de la section Logique & Flux du Journey Java de Coddy — leçon 6 sur 59.

Un tableau à dimensions irrégulières est un type spécial de tableau 2D où chaque ligne peut avoir un nombre différent de colonnes. En d'autres termes, c'est un tableau de tableaux, et chaque tableau « interne » peut avoir une longueur différente. Cela diffère d'un tableau 2D régulier, où toutes les lignes ont le même nombre de colonnes, formant une forme rectangulaire.

Les tableaux en dents de scie sont utiles lorsque vous devez stocker des données qui ne s'ajustent pas parfaitement dans une grille rectangulaire. Par exemple, vous pourriez utiliser un tableau en dents de scie pour stocker les mots de chaque phrase d'un paragraphe, où chaque phrase a un nombre différent de mots.

Voici comment déclarer et initialiser un tableau dentelé en Java :

data_type[][] array_name = new data_type[number_of_rows][];

// Initialize each row with a different number of columns
array_name[0] = new data_type[number_of_columns_in_row_0];
array_name[1] = new data_type[number_of_columns_in_row_1];
// ... and so on

Remarquez que lorsque vous déclarez d'abord le tableau, vous ne spécifiez que le nombre de lignes. Ensuite, vous initialisez chaque ligne séparément, en spécifiant le nombre de colonnes pour cette ligne.

challenge icon

Défi

Facile

Créez une méthode nommée createJaggedArray qui prend un entier n en entrée et retourne un tableau irrégulier d'entiers. Le tableau irrégulier devrait avoir la structure suivante :

  1. La première ligne devrait avoir 1 élément.
  2. La deuxième ligne devrait avoir 2 éléments.
  3. La troisième ligne devrait avoir 3 éléments.
  4. Et ainsi de suite, jusqu'à la ligne n, qui devrait avoir n éléments.

Initialisez chaque élément du tableau avec le produit de ses indices de ligne et de colonne (commençant à partir de 1). Par exemple, l'élément à la deuxième ligne et première colonne devrait avoir la valeur 2 * 1 = 2.

Aide-mémoire

Un tableau dentelé est un tableau 2D où chaque ligne peut avoir un nombre différent de colonnes, contrairement aux tableaux 2D réguliers où toutes les lignes ont la même longueur.

Pour déclarer et initialiser un tableau dentelé :

data_type[][] array_name = new data_type[number_of_rows][];

// Initialize each row with a different number of columns
array_name[0] = new data_type[number_of_columns_in_row_0];
array_name[1] = new data_type[number_of_columns_in_row_1];
// ... and so on

Lors de la déclaration d'un tableau dentelé, vous ne spécifiez que le nombre de lignes initialement, puis initialisez chaque ligne séparément avec son nombre spécifique de colonnes.

Essayez 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 CreateJaggedArray {
    public static int[][] createJaggedArray(int n) {
        // Écrivez votre code ici
    }
}
quiz iconTestez-vous

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