Java >> Tutoriel Java >  >> Java

Comment initialiser un tableau en Java

Un tableau est un groupe de variables typées similaires qui sont référencées par un commun. En d'autres termes, nous pouvons le définir comme un emplacement mémoire contigu qui stocke des données du même type. Les tableaux offrent un moyen pratique de regrouper des éléments de données.

Le but de l'utilisation des tableaux est qu'ils présentent certains des avantages, notamment :Dans un tableau, la mémoire est allouée dynamiquement, ce qui entraîne une économie de mémoire. Cette mémoire peut également être allouée au moment de l'exécution. Un tableau est compatible avec le cache et donc facilement accessible.

Dans ce tutoriel, nous allons discuter des différentes méthodes que nous utilisons pour initialiser un tableau. Avant cela, comprenons brièvement la syntaxe d'un tableau et ses types afin que nous initialisions le tableau. Cela nous permettra de déterminer facilement quel type de tableau nous initialisons.

Types de tableaux

Il existe deux types de tableaux :

  • Tableau unidimensionnel – Spécifier la position avec une valeur d'index unique qui permet d'accéder aux éléments individuellement. Sa taille est fixe.
  • Tableau bidimensionnel - Il s'agit d'un tableau 2D organisé sous forme de matrice. Il est représenté sous la forme d'un ensemble de lignes et de colonnes.

Déclaration d'un tableau

Tableau unidimensionnel

Return_type [] array_name;
        or
Return_type array_name[];

Exemple :

Int score [];   or  int [] score  or String []name;

Bidimensionnel

Return_type [][] array_name;
        or
Return_type array_name[][];

Exemple :

String student [] [];   or double results [] []; or String [] [] name;

À partir des exemples ci-dessus, 'return_type' spécifie le type d'éléments de données dans le tableau. Cela peut inclure ; String, double, int, etc. Le 'array_name' spécifie le nom donné au tableau. Par exemple, "étudiant" est le nom de notre tableau.

Initialiser un tableau signifie lui donner une valeur pour qu'il stocke des données. Par exemple, initialiser un tableau d'étudiants impliquera d'ajouter des étudiants au tableau.

Syntaxe
return_type array_name[] = new array_name[size]

Il existe différentes manières d'initialiser un tableau. Commençons maintenant et discutons de ces différentes manières

Initialiser un tableau après la déclaration

Nous pouvons déclarer notre tableau globalement et l'initialiser au moment où nous en avons besoin. Ce cas est mieux utilisé lorsque vous n'avez pas encore déterminé les valeurs que vous devez stocker dans le tableau. Dans ce cas, vous déclarerez d'abord votre tableau, puis plus tard dans le code. Vous pouvez initialiser le tableau. Nous utiliserons le mot-clé "nouveau" lors de l'initialisation.

class Student {
    public static void main( String args[] ) {
        String student [];
      //initializing the array
        student = new String[]{ "Moses", "Jeff", "Mary", "Noah", "Skoda" };
        //Printing the elements of array
        for (int p =0;p < 5;p++)
        {
            System.out.println(student[i]);
        }
    }
}

Initialisation au moment de la déclaration

Nous pouvons également initialiser le tableau au point de déclaration. Dans ce cas, nous ne spécifions pas la taille du tableau puisque nous connaissons les valeurs que nous voulons stocker dans le tableau.

Exemple :Supposons que nous ayons besoin de déclarer un tableau pour stocker 5 noms connus d'étudiants. On peut le faire au moment de la déclaration puisque les noms sont connus.

class Student {
    public static void main( String args[] ) {
        
      String student[] = { "Moses", "Jeff", "Mary", "Noah", "Skoda" };
       
    }
}

Initialiser un élément à la fois en utilisant la boucle for

Comme un tableau peut contenir plus d'un élément, nous pouvons décider d'initialiser tous les éléments à la fois ou un élément à la fois. Vous trouverez ci-dessous un exemple d'initialisation d'un élément à la fois à l'aide d'une boucle for a.

//one-dimensional array
for (int p = 0; p < array.length; p++) {
    array[p] = p + 2;
}
//two-dimensional array

for (int p = 0; p < 2; p++) {
    for (int k = 0; k < 5; k++) {
        array[p][k] = k + 1;
    }
}

Utiliser Array.fill()

Il s'agit d'une classe Java dans 'java.Utils.Arrays'. Cette méthode attribue une valeur spécifiée à chaque élément du tableau. Dans l'exemple ci-dessous, toutes les valeurs du tableau sont affectées à une valeur de 2.

int num[] = new int[5];
Arrays.fill(num, 2);
System.out.println(Arrays.toString(num)); 

Utilisation de Arrays.copyOf()

C'est aussi une autre méthode intéressante pour initialiser un tableau. Cette méthode copie un autre tableau et crée un nouveau tableau à partir de la copie. Quelques points à noter à propos de cette méthode, parfois, elle peut lancer une 'NullPointerException' lorsque le tableau source n'est pas initialisé. Enfin, il peut lever une ‘NegativeArraySizeException’ erreur lorsque le la longueur du tableau source est négative.

int array[] = { 1, 2, 3, 4, 5 };
int[] copy = Arrays.copyOf(array, 5);

Utilisation de Array.setAll()

Cette méthode a été introduite sur Java 8. Elle définit tous les éléments du tableau spécifié à l'aide d'une fonction génératrice. Si la fonction génératrice est nulle, alors une ‘NullPointerException ' erreur est renvoyée. Par exemple, utilisons cette méthode pour définir tous les éléments sur leur index respectif sur un tableau de taille 5.

int[] array = new int[5];
Arrays.setAll(array, p -> p);
System.out.println(Arrays.toString(array));
// [0, 1, 2, 3, 4,]

Conclusion

Les tableaux stockent des données du même type, par exemple, un tableau pour stocker une liste de noms d'étudiants étudiant une unité similaire. Avant de travailler sur ces tableaux, vous devez déclarer le tableau puis l'initialiser. L'initialisation consiste simplement à ajouter des données au tableau. Dans ce tutoriel, nous avons couvert ces différentes méthodes d'initialisation de tableau. Pour en savoir plus sur le tableau, consultez ArrayList en Java avec des exemples ici.


Balise Java