Méthode de comparaison de tableaux C#
La méthode Arrays.equals()
de Java peut facilement comparer les éléments de deux tableaux. Existe-t-il une fonction similaire en C# pour comparer efficacement le contenu d'un tableau ?
Solution :
Bien que C# n'ait pas d'équivalent exact à la méthode Arrays.equals()
, la méthode Enumerable.SequenceEqual
fournit des fonctionnalités similaires. Cette méthode est définie dans l'espace de noms System.Linq
et peut être utilisée pour comparer des éléments de n'importe quelle collection IEnumerable<T>
, y compris les tableaux.
Utilisation :
Pour comparer deux tableaux en utilisant Enumerable.SequenceEqual
, passez simplement les deux tableaux en arguments à la méthode :
<code class="language-csharp">bool areEqual = Enumerable.SequenceEqual(array1, array2);</code>
Avantages :
La méthodeEnumerable.SequenceEqual
présente les avantages suivants lors de la comparaison de tableaux C# :
int[]
, string[]
, object[]
). Enumerable.SequenceEqual
Utilisez la méthode d'exécution paresseuse, ce qui signifie que le tableau ne sera parcouru que si le contenu du tableau est différent. Autres options :
Si vous devez comparer spécifiquement des tableaux de types primitifs (par exemple, int[]
, double[]
), vous pouvez utiliser l'opérateur d'égalité structurelle intégré (==
) ou la méthode System.Array.Equals
. Cependant, ces options ne sont pas aussi polyvalentes que Enumerable.SequenceEqual
.
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!