Java - Tableaux
Java fournit une structure de données, le tableau , qui stocke une collection séquentielle de taille fixe d'éléments du même type. Un tableau est utilisé pour stocker une collection de données, mais il est souvent plus utile de considérer un tableau comme une collection de variables du même type.
Au lieu de déclarer des variables individuelles, telles que nombre0, nombre1, ... et nombre99, vous déclarez une variable tableau telle que nombres et utilisez nombres[0], nombres[1] et ..., nombres[99] pour représenter variables individuelles.
Ce didacticiel explique comment déclarer des variables de tableau, créer des tableaux et traiter des tableaux à l'aide de variables indexées.
Déclarer des variables de tableau
Pour utiliser un tableau dans un programme, vous devez déclarer une variable pour référencer le tableau et vous devez spécifier le type de tableau auquel la variable peut faire référence. Voici la syntaxe pour déclarer une variable tableau −
Syntaxe
dataType[] arrayRefVar; // preferred way. or dataType arrayRefVar[]; // works but not preferred way.
Remarque − Le style dataType[] arrayRefVar est préféré. Le style dataType arrayRefVar[] vient du C/C++ et a été adopté en Java pour prendre en charge C/C++; programmeurs.
Exemple
Les extraits de code suivants sont des exemples de cette syntaxe −
double[] myList; // preferred way. or double myList[]; // works but not preferred way.
Créer des tableaux
Vous pouvez créer un tableau en utilisant le nouvel opérateur avec la syntaxe suivante −
Syntaxe
arrayRefVar = new dataType[arraySize];
La déclaration ci-dessus fait deux choses −
-
Il crée un tableau en utilisant new dataType[arraySize].
-
Il affecte la référence du tableau nouvellement créé à la variable arrayRefVar.
La déclaration d'une variable de tableau, la création d'un tableau et l'attribution de la référence du tableau à la variable peuvent être combinées dans une seule instruction, comme indiqué ci-dessous −
dataType[] arrayRefVar = new dataType[arraySize];
Vous pouvez également créer des tableaux comme suit −
dataType[] arrayRefVar = {value0, value1, ..., valuek};
Les éléments du tableau sont accessibles via l'index . Les indices de tableau sont basés sur 0 ; c'est-à-dire qu'ils commencent de 0 à arrayRefVar.length-1 .
Exemple
L'instruction suivante déclare une variable tableau, myList, crée un tableau de 10 éléments de type double et affecte sa référence à myList −
double[] myList = new double[10];
L'image suivante représente le tableau myList. Ici, myList contient dix valeurs doubles et les indices vont de 0 à 9.
Traitement des tableaux
Lors du traitement des éléments de tableau, nous utilisons souvent soit pour boucle ou foreach boucle car tous les éléments d'un tableau sont du même type et la taille du tableau est connue.
Exemple
Voici un exemple complet montrant comment créer, initialiser et traiter des tableaux −
Démo en directpublic class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // Print all the array elements for (int i = 0; i < myList.length; i++) { System.out.println(myList[i] + " "); } // Summing all elements double total = 0; for (int i = 0; i < myList.length; i++) { total += myList[i]; } System.out.println("Total is " + total); // Finding the largest element double max = myList[0]; for (int i = 1; i < myList.length; i++) { if (myList[i] > max) max = myList[i]; } System.out.println("Max is " + max); } }
Cela produira le résultat suivant −
Sortie
1.9 2.9 3.4 3.5 Total is 11.7 Max is 3.5
Les boucles foreach
JDK 1.5 a introduit une nouvelle boucle for connue sous le nom de boucle foreach ou boucle for améliorée, qui vous permet de parcourir le tableau complet de manière séquentielle sans utiliser de variable d'index.
Exemple
Le code suivant affiche tous les éléments du tableau myList −
Démo en directpublic class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // Print all the array elements for (double element: myList) { System.out.println(element); } } }
Cela produira le résultat suivant −
Sortie
1.9 2.9 3.4 3.5
Passer des tableaux aux méthodes
Tout comme vous pouvez transmettre des valeurs de type primitif à des méthodes, vous pouvez également transmettre des tableaux à des méthodes. Par exemple, la méthode suivante affiche les éléments dans un int tableau −
Exemple
public static void printArray(int[] array) { for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } }
Vous pouvez l'invoquer en passant un tableau. Par exemple, l'instruction suivante appelle la méthode printArray pour afficher 3, 1, 2, 6, 4 et 2 −
Exemple
printArray(new int[]{3, 1, 2, 6, 4, 2});
Renvoyer un tableau à partir d'une méthode
Une méthode peut aussi retourner un tableau. Par exemple, la méthode suivante renvoie un tableau qui est l'inverse d'un autre tableau −
Exemple
public static int[] reverse(int[] list) { int[] result = new int[list.length]; for (int i = 0, j = result.length - 1; i < list.length; i++, j--) { result[j] = list[i]; } return result; }
La classe des tableaux
La classe java.util.Arrays contient diverses méthodes statiques pour trier et rechercher des tableaux, comparer des tableaux et remplir des éléments de tableau. Ces méthodes sont surchargées pour tous les types primitifs.
Sr.No. | Méthode et description |
---|---|
1 | |
2 | |
3 | |
4 |
Java
- Tableaux C#
- Opérateurs Java
- Tableaux de copie Java
- InterfaceJava
- Java essayer avec des ressources
- Annotations Java
- Tableaux en C++ | Déclarer | Initialiser | Pointeur vers des exemples de tableaux
- Allocation dynamique C++ de tableaux avec exemple
- Tutoriel Java Arrays :Déclarer, Créer, Initialiser [Exemple]