C# Tableau
, ..., numbers
Déclarer une variable de tableau ne déclare pas des variables individuelles une par une, comme number0, number1, ..., number99 ; à la place, vous déclarez une variable comme numbers, puis utilisez numbers
Tous les tableaux sont constitués d'emplacements mémoire contigus. L'adresse la plus basse correspond au premier élément, et l'adresse la plus élevée correspond au dernier élément.
Déclaration de tableaux
En C#, vous pouvez déclarer un tableau en utilisant la syntaxe suivante :
datatype[] arrayName;
où,
- datatypeUtilisé pour spécifier le type des éléments stockés dans le tableau.
- [ ]Spécifie le rang (dimension) du tableau. Le rang spécifie la taille du tableau.
- arrayNameSpécifie le nom du tableau.
Par exemple :
double[] balance;
Initialisation des tableaux
Déclarer un tableau n'initialise pas le tableau en mémoire. Lorsque vous initialisez une variable de tableau, vous pouvez affecter des valeurs au tableau.
Les tableaux sont des types référence, vous devez donc utilisernewmot-clé pour créer une instance d’un tableau.
Par exemple :
double[] balance = new double[10];
Affecter au tableau
Vous pouvez affecter une valeur à un élément individuel du tableau en utilisant le numéro d'index, par exemple :
double[] balance = new double[10]; balance[0] = 4500.0;
Vous pouvez affecter des valeurs au tableau en même temps que vous déclarez le tableau, par exemple :
double[] balance = { 2340.0, 4523.69, 3421.0};
Vous pouvez également créer et initialiser un tableau, par exemple :
int [] marks = new int[5] { 99, 98, 92, 97, 95};
Dans les cas ci-dessus, vous pouvez également omettre la taille du tableau, par exemple :
int [] marks = new int[] { 99, 98, 92, 97, 95};
Vous pouvez également affecter une variable de tableau à une autre variable de tableau cible. Dans ce cas, la cible et la source pointent vers le même emplacement mémoire :
int [] marks = new int[] { 99, 98, 92, 97, 95};
int[] score = marks;
Lorsque vous créez un tableau, le compilateur C# initialise implicitement chaque élément du tableau à une valeur par défaut en fonction du type du tableau. Par exemple, tous les éléments d'un tableau int sont initialisés à 0.
Accéder aux éléments d'un tableau
Les éléments sont accessibles à l'aide d'un nom de tableau indexé. Pour ce faire, on place l'index de l'élément entre crochets après le nom du tableau. Par exemple :
double salary = balance[9];
Voici un exemple qui utilise les trois concepts mentionnés ci-dessus, à savoir la déclaration, l'affectation et l'accès aux tableaux :
Exemple
namespace ArrayApplication
{
class MyArray
{
static void Main(string[] args)
{
int [] n = new int[10]; /* n est un tableau de 10 entiers */
int i,j;
/* Initialiser les éléments du tableau n */
for ( i = 0; i < 10; i++ )
{
n[ i ] = i + 100;
}
/* Afficher la valeur de chaque élément du tableau */
for (j = 0; j < 10; j++ )
{
Console.WriteLine("Élément[{0}] = {1}", j, n[j]);
}
Console.ReadKey();
}
}
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
Element[0] = 100 Element[1] = 101 Element[2] = 102 Element[3] = 103 Element[4] = 104 Element[5] = 105 Element[6] = 106 Element[7] = 107 Element[8] = 108 Element[9] = 109
UtilisationforeachBoucles
Dans l'exemple précédent, nous avons utilisé une boucle for pour accéder à chaque élément du tableau. Vous pouvez également utiliser une instruction foreachpour parcourir un tableau.
L'exemple suivant utilise foreach pour parcourir un tableau :
Exemple
namespace ArrayApplication
{
class MyArray
{
static void Main(string[] args)
{
int [] n = new int[10]; /* n est un tableau de 10 entiers */
/* Initialiser les éléments du tableau n */
for ( int i = 0; i < 10; i++ )
{
n[i] = i + 100;
}
/* Afficher la valeur de chaque élément du tableau */
foreach (int j in n )
{
int i = j-100;
Console.WriteLine("Élément[{0}] = {1}", i, j);
}
Console.ReadKey();
}
}
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
Element[0] = 100 Element[1] = 101 Element[2] = 102 Element[3] = 103 Element[4] = 104 Element[5] = 105 Element[6] = 106 Element[7] = 107 Element[8] = 108 Element[9] = 109
Détails des tableaux C#
En C#, les tableaux sont très importants, et il y a plus de détails que vous devez comprendre. La liste suivante présente quelques concepts importants liés aux tableaux que les programmeurs C# doivent bien connaître :
| Concepts | Description |
|---|---|
| Tableaux multidimensionnels | C# prend en charge les tableaux multidimensionnels. La forme la plus simple d'un tableau multidimensionnel est le tableau à deux dimensions. |
| Tableau en dents de scie | C# prend en charge les tableaux en dents de scie, qui sont des tableaux de tableaux. |
| Passage de tableaux à des fonctions | Vous pouvez passer un pointeur vers un tableau à une fonction en spécifiant le nom du tableau sans indice. |
| Tableau de paramètres | Il est souvent utilisé pour passer un nombre inconnu de paramètres à une fonction. |
| Classe Array | Défini dans l'espace de noms System, il est la classe de base de tous les tableaux et fournit diverses propriétés et méthodes pour les tableaux. |