Maison  >  Article  >  développement back-end  >  Tableaux en C#

Tableaux en C#

王林
王林original
2024-09-03 15:11:33459parcourir

Un tableau est un ensemble d'objets. Les éléments présents dans un tableau sont du même type de données. Il peut s'agir d'un int, d'un float, d'un char, etc. Le concept de tableaux en C# voit le jour pour éviter la lourdeur du stockage de différentes valeurs en créant différentes variables.

23 56 32 54 1
0 1 2 3 4

L'index d'un tableau commence à 0 et l'index d'un tableau sera augmenté en fonction de la taille spécifique d'un tableau. Si nous avons un tableau de longueur 5, alors le tableau commencera à l'index 0 et se terminera à l'index 4. Ainsi, la longueur du tableau définit le nombre d'éléments dans ce tableau.

Comment fonctionne le Array en C# ?

En C#, la longueur du tableau peut être fixe ou dynamique. Dans un tableau de longueur fixe, un nombre fixe d’éléments peut être stocké. Dans un tableau dynamique, la taille augmente à mesure que de nouveaux éléments arrivent dans le tableau, car l'allocation de mémoire d'un tableau est dynamique. Dans les tableaux, la mémoire de pile stocke la variable du tableau, tandis que le tas géré stocke les éléments. En C#, le tableau est dérivé de System. Classe de tableau. Si nous avons un tableau d'entiers, alors tous les éléments ont leur valeur respective, et comme un tableau en C# est un type référence, les éléments contiendront une référence à des objets réels.

Comment créer un tableau en C# ?

Syntaxe d'un tableau :

data_type [] name_of_array

1. Déclaration d'un tableau

Code :

class Name
{
static void Main(string[]args)
{
Int32[] intarray;   //array declaration
}
}

Explication du code : Dans la déclaration Array, la première partie est le type de données qui définit le type d'objets dans un tableau. La deuxième partie est [], qui définit le nombre d'objets dans un tableau, puis vient le nom du tableau, qui est un tableau int dans ce cas

2. Initialisation du tableau

Code :

class Name
{
static void Main(string[]args)
{
Int32[] Intarray;   //array declaration
Intarray = new Int32[4]; // array initialization
Intarray[0]= 23;  // assigning values to the elements
Intarray[1]=5;
Intarray[2]=88;
Intarray[3]=6;
}
}

Explication du code : Lors de l'initialisation du tableau, nous devons spécifier le nombre de valeurs dans un tableau en utilisant des crochets et en attribuant ces valeurs à chaque élément du tableau. Donc ici, intarray[0] signifie que nous attribuons une valeur en première position, intarray[1] signifie attribuer des valeurs en deuxième position, et ainsi de suite.

3. Affichage des valeurs du tableau

Code :

class Name
{
static void Main(string[]args)
{
Int32[] Intarray;   //array declaration
Intarray = new Int32[4]; //array initialization
Intarray[0]= 23; //assigning values to array
Intarray[1]=5;
Intarray[2]=88;
Intarray[3]=6;
Console.WriteLine(Intarray[0]);
Console.WriteLine(Intarray[1]);
Console.WriteLine(Intarray[2]);
Console.WriteLine(Intarray[3]);
Console.ReadKey();
}
}

Explication du code : Console.WriteLine est une méthode pour afficher chaque valeur d'un tableau dans la console.

Exemples de tableaux en C#

Les exemples et les résultats en C# sont affichés ci-dessous

Exemple n°1

Code :

using System;
namespace ArrayDemo
{
class Name
{
static void Main(string[] args)
{
Int32[] Intarray;   // array declaration
Intarray = new Int32[4]; // array initialization
Intarray[0] = 23;   // assigning values to the array element
Intarray[1] = 5;
Intarray[2] = 88;
Intarray[3] = 6;
Console.WriteLine(Intarray[0]);
Console.WriteLine(Intarray[1]);
Console.WriteLine(Intarray[2]);
Console.WriteLine(Intarray[3]);
Console.ReadKey();
}
}
}

Dans le code ci-dessus, le tableau est déclaré et initialisé avec quatre éléments et Console.WriteLine affiche toutes les valeurs.

Sortie :

Tableaux en C#

Exemple n°2

Code :

using System;
namespace Demo
{
class Array
{
static void Main(string[] args)
{
int[] arr = new int[4] { 10, 20, 30, 40 };
for (int i = 0; i < arr.Length; i++)    // Traverse array elements
{
Console.WriteLine(arr[i]);
}
}
}
}

Dans le code ci-dessus, le tableau est initialisé et déclaré avec quatre éléments, puis la boucle est utilisée pour accéder aux éléments du tableau.

Sortie :

Tableaux en C#

Exemple #3

On peut aussi utiliser foreach pour accéder aux éléments du tableau

Code :

using System;
namespace Demo
{
class Array
{
static void Main(string[] args)
{
int[] arr = new int[4] { 10, 20, 30, 40 };
foreach (int i in arr)
{
Console.WriteLine(i);
}
}
}
}

Sortie :

Tableaux en C#

Types de tableaux en C#

En C#, nous avons plusieurs types de tableaux :

  1. Tableau à une seule dimension.
  2. Tableau multidimensionnel.
  3. Tableau irrégulier.

Les exemples ci-dessus concernent un tableau à une seule dimension.

Tableau multidimensionnel

Dans les tableaux rectangulaires ou les tableaux multidimensionnels, les données sont stockées sous forme de tableau.

Int[,] intArray = new int[4,3]

En cela, nous avons spécifié la taille du tableau avec quatre lignes et trois colonnes.

1. Déclaration de tableaux multidimensionnels

int[,] array = new int[3,3]; //declaration of 2D array
int[,,] array=new int[3,3,3]; //declaration of 3D array

2. Initialisation du tableau multidimensionnel

int[,] array = new int[3,3]; //declaration of 2D array
array[0,1]=10; //initialization
array[1,2]=20;
array[2,0]=30;<c/ode>

Exemple de tableau multidimensionnel

Code :

using System;
namespace Demo
{
class Array
{
public static void Main()
{
int[,] intArray = new int[3, 2]{
{1, 2},
{2, 4},
{4, 8}
};
Console.WriteLine(intArray[0, 0]);
Console.WriteLine(intArray[0, 1]);
Console.WriteLine(intArray[1, 0]);
Console.WriteLine(intArray[1, 1]);
Console.WriteLine(intArray[2, 0]);
Console.WriteLine(intArray[2, 1]);
}
}
}

Explication du code : Dans le code ci-dessus, les lignes et les colonnes sont spécifiées avec trois lignes et quatre colonnes et Console.WriteLine affiche toutes les valeurs.

Sortie :

Tableaux en C#

Tableau dentelé

Les éléments des tableaux irréguliers sont des « tableaux » car ils stockent directement le tableau.

1. Déclaration du tableau irrégulier

int[][] array = new int[3][];

Le premier support indique la taille et le deuxième support indique les dimensions du tableau.

2. Initialisation et assignation de valeurs aux tableaux irréguliers

array[0] = new int[4] { 1, 2, 3, 4 };
array[1] = new int[5] { 1, 2, 3, 4,5 };

La taille des éléments peut être différente.

Vous trouverez ci-dessous des exemples de tableau irrégulier :

Exemple n°1

Code :

using System;
namespace Demo
{
class Array
{
public static void Main()
{
int[][] array = new int[2][];// Declare the array
array[0] = new int[] { 1, 2, 6, 8 };// Initialize the array
array[1] = new int[] { 72, 51, 47, 23, 54, 13 };
// Traverse array elements
for (int i = 0; i < array.Length; i++)
{
for (int j = 0; j < array[i].Length; j++)
{
System.Console.Write(array[i][j] + " ");
}
System.Console.WriteLine();
}
}
}
}

Sortie :

Tableaux en C#

Exemple n°2

Code :

using System;
namespace Demo
{
class Array
{
public static void Main()
{
int[][] array = new int[3][]{
new int[] { 51, 22, 43, 87 },
new int[] { 2, 3, 4, 56, 94, 23 },
new int[] { 4, 5 }
};
// Traverse array elements
for (int i = 0; i < array.Length; i++)
{
for (int j = 0; j < array[i].Length; j++)
{
System.Console.Write(array[i][j] + " ");
}
System.Console.WriteLine();
}
}
}
}

Sortie :

Tableaux en C#

Méthode de tableau en C#

Les points suivants sont les suivants :

  1. Clear(Array, Int32, Int32): This method is used to set the element range to default based on the type of element.
  2. Clone(): This method is used to create a copy of the element.
  3. Copy(Array, Array, Int32): This method is used to copy the elements of one array to another array.
  4. Equals(Object): This method basically checks if the mentioned object is equal to the current object.
  5. Sort(Array): This method is used to sort the array.
  6. CreateInstance(Type, Int32): This method is used to create an array of a specific type, length, and size.
  7. ToString(): This is used to display string representation.
  8. GetType(): This method is used to return the type of object.
  9. IndexOf(Array, Object): This method is used to search the particular object and return the first occurrence index in a 1D array.
  10. Reverse(Array): This method is used to reverse the sequence of the elements.
  11. SetValue(Object, Int32): This method in the 1D array is used to set the value of an element.

Example

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ArrayMethod
{
class Program
{
static void Main(string[] args)
{
int[] arr = new int[6] { 5, 8, 9, 25, 0, 7 };
// Creating an empty array
int[] arr2 = new int[6];
Console.WriteLine("length of first array: " + arr.Length); // length of array
Array.Sort(arr);  //sorting array elements
Console.Write("Sorted array elements: ");
PrintArray(arr);
Array.Copy(arr, arr2, arr.Length);  // copy elements of one array to other
Console.Write("Second array elements: ");
PrintArray(arr2);
Console.WriteLine("Get Index:\t{0}", Array.IndexOf(arr, 9));  // index of value
Array.Reverse(arr);
Console.Write("\nFirst Array elements in reverse order: ");  // reverse the elements of array
PrintArray(arr);
Array.Clear(arr, 0, 6);  //set default value of elements
PrintArray(arr);
}
static void PrintArray(int[] arr)
{
foreach (int i in arr)
{
Console.Write("\t{0}", i);
}
Console.WriteLine("\n");
}
}
}

Code Explanation: The above code shows several methods of the array in which arr. Length is used to get the length which is equal to 6, Array. Sort gives the values in sorted form. Array. Copy copies the values from the first array to the second array. Array. The reverse displays the array in reverse order, whereas Clear sets the default values of the elements.

Output:

Tableaux en C#

Conclusion

So it is better to declare one array variable instead of declaring too many different variables as elements in the memory are stored sequentially, which makes it faster. Also, it’s easy to traverse, manipulate and sort the data by using arrays.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Boucle foreach C#Article suivant:Boucle foreach C#