JavaRush /Blog Java /Random-FR /Tableaux Java
articles
Niveau 15

Tableaux Java

Publié dans le groupe Random-FR

Tableaux

Un tableau est une structure de données qui stocke des valeurs du même type. Un élément de tableau individuel est accessible à l’aide d’un index entier. Par exemple, si a est un tableau d’entiers, alors la valeur de l’expression a[i] est égale au i-ème entier du tableau. Tableaux Java - 1Un tableau est déclaré comme suit : d'abord, le type du tableau est indiqué, c'est-à-dire le type des éléments contenus dans le tableau, suivi d'une paire de crochets vides, puis du nom de la variable. Par exemple, voici comment déclarer un tableau composé d'entiers :
int[] a;
Cependant, cette instruction déclare uniquement une variable а, sans l'initialiser avec un tableau réel. Pour créer un tableau, vous devez utiliser l'opérateur new.
int[] a = new int [100];
Cet opérateur crée un tableau de 100 entiers. Les éléments de ce tableau sont numérotés de 0 à 99 (et non de 1 à 100). Une fois créé, le tableau peut être rempli, par exemple, à l'aide d'une boucle.
int[] а = new int[100];
for (int i = 0; i < 100; i++)
 a[i] = i; //Заполняет массив числами от 0 до 99
Si vous essayez d'accéder à un élément а [100](ou à tout autre élément dont l'index est en dehors de la plage 0 à 99) en créant un tableau de 100 éléments, le programme se terminera car une exception d'index de tableau hors plage se produira. Pour compter le nombre d'éléments dans un tableau, utilisez la méthode Array name .length. Par exemple,
for (int i = 0; i < a.length; i++, System.out.println(a[i]));
Une fois un tableau créé, il est impossible de modifier sa taille (même si vous pouvez bien sûr modifier ses éléments individuels). Si vous devez modifier fréquemment la taille d'un tableau pendant l'exécution du programme, il est préférable d'utiliser une autre structure de données appelée liste de tableaux. Un tableau peut être déclaré de deux manières :
int[] a;
or
int a[];
La plupart des programmeurs Java préfèrent le premier style car il sépare plus clairement le type de tableau int [](tableau d'entiers) du nom de la variable.

Initialiseurs de tableau et tableaux sans nom

Java dispose d'une fonctionnalité permettant de créer simultanément un tableau et de l'initialiser. Voici un exemple d'une telle structure syntaxique :
int[] smallPrimes = {2, 3, 5, 7, 11, 13};
Notez que dans ce cas, il n'est pas nécessaire d'utiliser l'opérateur new. De plus, vous pouvez même initialiser un tableau sans nom :
new int[] {16, 19, 23, 29, 31, 37}
Cette expression alloue de la mémoire pour un nouveau tableau et le remplit avec les nombres spécifiés entre accolades. Dans ce cas, leur nombre est calculé et, en conséquence, la taille du tableau est déterminée. Cette construction syntaxique est pratique à utiliser pour réinitialiser un tableau sans créer de nouvelle variable. Par exemple, l'expression
smallPrimes = new int{17, 19, 23, 29, 31, 37};
est une expression abrégée
int[] anonymous = {17, 19, 23, 29, 31, 37};
smallPrimes = anonymous;
Il est possible de créer un tableau de taille nulle. Un tel tableau peut être utile lors de l’écriture d’une méthode qui évalue un tableau qui s’avère vide. Un tableau de longueur nulle est déclaré comme suit :
new тип Элементов[]
Notez qu'un tel tableau n'est pas équivalent à un objet null.

Copie de tableaux

Un tableau peut être copié dans un autre, mais les deux variables feront référence au même tableau.
int[] luckyNumbers = smallPrimes;
luckyNumbers[5] = 12; //Теперь элемент smallPrimes[5]также equals 12
Le résultat est présenté sur la Fig. 3.1. Si vous devez copier tous les éléments d'un tableau dans un autre, vous devez utiliser la méthode arraycopy de la classe System. Son appel ressemble à ceci :
System.arraycopy(from, fromlndex, to, tolndex, count);
Le tableau todoit être suffisamment grand pour contenir tous les éléments à copier. Tableaux Java - 2
Figure 3.1. Copier un tableau
Par exemple, les opérateurs présentés ci-dessous, dont les résultats sont présentés sur la Fig. 3.2, créez deux tableaux puis copiez les quatre derniers éléments du premier tableau dans le second. La copie commence à partir de la deuxième position dans le tableau source et les éléments copiés sont placés dans le tableau cible à partir de la troisième position.
int[] smallPrimes = {2, 3, 5, 7, 11, 13};
int[] luckyNumbers = {1001, 1002, 1003, 1004, 1005, 1006, 1007};
System.аrrаусору(smallPrimes, 2, luckyNumbers, 3, 4);
for (int i = 0; i < luckyNumbers.length; i++)
System.out.println(i + ": " + luckyNumbers[i]);
L'exécution de ces instructions produit le résultat suivant.
0: 1001
1: 1002
2: 1003
3: 5
4: 7
5: 11
6: 13
Tableaux Java - 3
Riz. 3.2. Copie d'éléments de tableau
Un tableau en Java est très différent d’un tableau en C++. Cependant, c’est pratiquement la même chose qu’un pointeur vers un tableau dynamique. Cela signifie que l'opérateur
int[] a = new int[100]; //Java
est équivalent à l'opérateur
int* = new int[100]; //C++,
а не
int a[100]; //C++
En Java, l' []opérateur par défaut vérifie la plage des index. De plus, Java n'a pas d'arithmétique de pointeur : vous ne pouvez pas incrémenter un pointeur pour accéder à l'élément suivant d'un tableau. Lien vers la source : tableaux Java
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION