Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Maîtriser les Tableaux Java : Guide Complet pour une Gestion Efficace des Données

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 number0, number1, ..., et number99, vous déclarez une variable de tableau unique telle que numbers et utilisez numbers[0], numbers[1], ..., numbers[99] pour représenter des variables individuelles.

Ce tutoriel présente comment déclarer des variables de tableau, créer des tableaux et traiter des tableaux en utilisant des variables indexées.

Déclaration de 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 que la variable peut référencer. Voici la syntaxe pour déclarer une variable de tableau :

Syntaxe

dataType[] arrayRefVar; // façon préférée.
ou
dataType arrayRefVar[]; // fonctionne mais pas la façon préférée.

Note – Le style dataType[] arrayRefVar est préféré. Le style dataType arrayRefVar[] vient du langage C/C++ et a été adopté en Java pour accommoder les programmeurs C/C++.

Exemple

Les extraits de code suivants sont des exemples de cette syntaxe :

double[] myList; // façon préférée.
ou
double myList[]; // fonctionne mais pas la façon préférée.

Création de tableaux

Vous pouvez créer un tableau en utilisant l'opérateur new avec la syntaxe suivante :

Syntaxe

arrayRefVar = new dataType[arraySize];

L'instruction ci-dessus fait deux choses :

La déclaration d'une variable de tableau, la création d'un tableau et l'assignation de la référence du tableau à la variable peuvent être combinées en une seule instruction, comme montré ci-dessous :

dataType[] arrayRefVar = new dataType[arraySize];

Alternativement, vous pouvez créer des tableaux comme suit :

dataType[] arrayRefVar = {value0, value1, ..., valuek};

Les éléments du tableau sont accessibles via l'index. Les indices des tableaux sont basés sur 0 ; c'est-à-dire qu'ils commencent à 0 jusqu'à arrayRefVar.length-1.

Exemple

L'instruction suivante déclare une variable de tableau, myList, crée un tableau de 10 éléments de type double et assigne sa référence à myList :

double[] myList = new double[10];

L'image suivante représente le tableau myList. Ici, myList contient dix valeurs double et les indices vont de 0 à 9.

Maîtriser les Tableaux Java : Guide Complet pour une Gestion Efficace des Données

Traitement des tableaux

Lors du traitement des éléments de tableau, nous utilisons souvent soit la boucle for soit la boucle foreach 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 :

Live Demo
public class TestArray {
  public static void main(String[] args) {
    double[] myList = {1.9, 2.9, 3.4, 3.5};
    // Affiche tous les éléments du tableau
    for (int i = 0; i < myList.length; i++) {
      System.out.println(myList[i] + " ");
    }
    // Somme de tous les éléments
    double total = 0;
    for (int i = 0; i < myList.length; i++) {
      total += myList[i];
    }
    System.out.println("Total is " + total);
    // Trouver l'élément le plus grand
    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 séquentiellement sans utiliser de variable d'index.

Exemple

Le code suivant affiche tous les éléments du tableau myList :

Live Demo
public class TestArray {
  public static void main(String[] args) {
    double[] myList = {1.9, 2.9, 3.4, 3.5};
    // Affiche tous les éléments du tableau
    for (double element: myList) {
      System.out.println(element);
    }
  }
}

Cela produira le résultat suivant :

Sortie

1.9
2.9
3.4
3.5

Passage de tableaux aux méthodes

Tout comme vous pouvez passer des valeurs de type primitif aux méthodes, vous pouvez également passer des tableaux aux méthodes. Par exemple, la méthode suivante affiche les éléments d'un tableau int :

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 invoque la méthode printArray pour afficher 3, 1, 2, 6, 4, et 2 :

Exemple

printArray(new int[]{3, 1, 2, 6, 4, 2});

Retour d'un tableau depuis une méthode

Une méthode peut également retourner un tableau. Par exemple, la méthode suivante retourne un tableau qui est l'inversion 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 Arrays

La classe java.util.Arrays contient diverses méthodes statiques pour trier et rechercher dans les tableaux, comparer les tableaux et remplir les éléments de tableau. Ces méthodes sont surchargées pour tous les types primitifs.

N° Méthode et Description
1

public static int binarySearch(Object[] a, Object key)

Recherche le tableau spécifié d'Objets (Byte, Int, double, etc.) pour la valeur spécifiée en utilisant l'algorithme de recherche binaire. Le tableau doit être trié avant d'appeler cette méthode. Retourne l'index de la clé de recherche, si elle est contenue dans la liste ; sinon, retourne ( – (point d'insertion + 1)).

2

public static boolean equals(long[] a, long[] a2)

Retourne true si les deux tableaux spécifiés de longs sont égaux l'un à l'autre. Deux tableaux sont considérés égaux s'ils contiennent le même nombre d'éléments, et tous les paires correspondantes d'éléments dans les deux tableaux sont égaux. Retourne true si les deux tableaux sont égaux. La même méthode pourrait être utilisée par tous les autres types de données primitifs (Byte, short, Int, etc.)

3

public static void fill(int[] a, int val)

Assigne la valeur int spécifiée à chaque élément du tableau spécifié d'ints. La même méthode pourrait être utilisée par tous les autres types de données primitifs (Byte, short, Int, etc.)

4

public static void sort(Object[] a)

Trie le tableau spécifié d'objets dans un ordre croissant, selon l'ordre naturel de ses éléments. La même méthode pourrait être utilisée par tous les autres types de données primitifs (Byte, short, Int, etc.)

Java

  1. Maîtriser les tableaux C# : Déclaration, initialisation et opérations
  2. Maîtriser les opérateurs Java : Types, syntaxe et exemples pratiques
  3. Techniques de copie de tableaux en Java : Guide complet
  4. Maîtriser les interfaces Java : concepts, implémentation et bonnes pratiques
  5. Maîtriser le try-with-resources Java : gestion automatique des ressources expliquée
  6. Annotations Java expliquées : types, placement et exemples pratiques
  7. Les tableaux en C++ : Déclaration, initialisation et techniques avec pointeurs
  8. Maîtriser l'allocation de tableaux dynamiques en C++ : Guide pratique avec exemples de code
  9. Tutoriel Java Arrays : Déclaration, création et initialisation – Code d'exemple