HOWTO · Csharp
Comparer les tableaux en C#
Dans cet article, nous allons apprendre à comparer et à vérifier si deux tableaux ou plus sont égaux en C#.
Sur cette page
Cet article discutera de la comparaison de deux tableaux pour voir s’ils sont égaux.
Les deux méthodes que nous allons discuter et mettre en œuvre pour comparer les tableaux sont,
- la fonction
SequenceEqual(); - comparaison des éléments appariés dans chacun des tableaux.
Si deux tableaux ont les mêmes éléments correspondants et le même nombre d’éléments, ils sont dits égaux.
Utilisez la fonction SequenceEqual() pour comparer des tableaux en C#
Tout d’abord, nous devons importer la bibliothèque pour accéder à la fonction SequenceEqual().
using System.Linq;
Créez une classe ArrayCompare avec la fonction Main() à l’intérieur.
class ArrayCompare {
static void Main(string[] args) {}
}
Déclarez la variable isEqual en tant que variable de type booléen. Il renverra True ou False selon que les tableaux sont égaux ou non.
Boolean isEqual;
Initialisez deux tableaux de type de données int[] nommés firstArray et secondArray, et affectez-leur des valeurs entières à comparer.
int[] firstArray = { 10, 20, 30, 40, 40, 50 };
int[] secondArray = { 10, 20, 30, 40, 40, 50 };
Nous allons utiliser la méthode SequenceEqual() pour comparer ces deux tableaux.
isEqual = firstArray.SequenceEqual(secondArray);
Maintenant que nous avons une valeur vraie ou fausse enregistrée dans la variable isEqual, nous devons vérifier ce qu’elle renvoie. Si la valeur retournée est True, il exécutera le bloc if, et si la valeur retournée est False, il exécutera le bloc else.
if (isEqual) {
Console.WriteLine("Both the arrays are equal");
} else {
Console.WriteLine("Both the arrays are not equal");
}
Code source:
using System;
using System.Linq;
class ArrayCompare {
static void Main(string[] args) {
Boolean isEqual;
int[] firstArray = { 10, 20, 30, 40, 40, 50 };
int[] secondArray = { 10, 20, 30, 40, 40, 50 };
isEqual = firstArray.SequenceEqual(secondArray);
if (isEqual) {
Console.WriteLine("Both the arrays are equal.");
} else {
Console.WriteLine("Both the arrays are not equal.");
}
}
}
Lorsque les deux tableaux sont égaux,
Production:
Both the arrays are equal.
Supposons que nous modifions n’importe quel élément du firstArray en,
int[] firstArray = { 10, 20, 30, 40, 30, 60 };
Production:
Both the arrays are not equal.
Comparer les éléments correspondants pour comparer les tableaux en C#
Nous allons créer une variable booléenne et définir sa valeur sur true dans la fonction Main().
Boolean isEqual = true;
Initialisez deux tableaux de la même manière que la méthode précédente.
int[] firstArray = { 10, 20, 30, 40, 40, 50 };
int[] secondArray = { 10, 20, 30, 40, 40, 50 };
Nous devons déterminer la longueur des deux tableaux. De plus, pour être égales, toutes les valeurs d’index doivent être identiques.
Appliquons donc une condition pour s’assurer que les longueurs de firstArray et secondArray sont égales. S’il renvoie True, nous devons valider les valeurs à tous les index ; sinon, la valeur isEqual sera fausse.
Pour vérifier l’égalité de tous les index des tableaux, nous allons utiliser une boucle for, commençant à l’index 0 et itérant sur toute la longueur de secondArray. Il vérifiera les valeurs de tous les index, et s’ils ne sont pas tous identiques, il définira la valeur de isEqual sur False.
if (firstArray.Length == secondArray.Length) {
for (int y = 0; y < secondArray.Length; y++) {
if (secondArray[y] != firstArray[y]) {
isEqual = false;
}
}
} else {
isEqual = false;
}
Enfin, nous devons afficher le message indiquant si les tableaux sont égaux.
if (isEqual) {
Console.WriteLine("The arrays are equal");
} else {
Console.WriteLine("The arrays are not equal");
}
Code source:
using System;
class ArrayCompare {
static void Main(string[] args) {
Boolean isEqual = true;
int[] firstArray = { 10, 20, 30, 40, 40, 50 };
int[] secondArray = { 10, 20, 30, 40, 40, 50 };
if (firstArray.Length == secondArray.Length) {
for (int y = 0; y < secondArray.Length; y++) {
if (secondArray[y] != firstArray[y]) {
isEqual = false;
}
}
} else {
isEqual = false;
}
if (isEqual) {
Console.WriteLine("Both the arrays are equal.");
} else {
Console.WriteLine("Both the arrays are not equal.");
}
}
}
Lorsque les deux tableaux sont égaux,
Production:
Both the arrays are equal.
Si nous modifions n’importe quel élément dans deux tableaux,
Production:
Both the arrays are not equal.