Maison > développement back-end > C++ > Comment puis-je convertir un tableau de chaînes en un tableau d'entiers à l'aide de LINQ en C# ?

Comment puis-je convertir un tableau de chaînes en un tableau d'entiers à l'aide de LINQ en C# ?

Barbara Streisand
Libérer: 2025-01-09 11:57:42
original
667 Les gens l'ont consulté

How Can I Convert a String Array to an Integer Array Using LINQ in C#?

Convertir un tableau de chaînes en tableau d'entiers en C# à l'aide de LINQ

En programmation, il est souvent nécessaire de convertir un tableau de chaînes représentant des entiers en un véritable tableau d'entiers. Cette tâche peut être facilement accomplie à l'aide de LINQ, une puissante extension de langage permettant de travailler avec des collections.

Solution LINQ utilisant Select

Une façon de convertir un tableau de chaînes en un tableau d'entiers consiste à utiliser la méthode d'extension Select. Cette méthode d'extension vous permet de convertir chaque élément de la collection en un nouvel élément à l'aide d'une expression lambda spécifiée. Dans ce cas, l'expression lambda peut être int.Parse(s), où s est l'élément chaîne :

<code class="language-csharp">int[] myInts = arr.Select(int.Parse).ToArray();</code>
Copier après la connexion

Cette ligne de code applique la méthode int.Parse à chaque élément de chaîne du tableau, le convertissant efficacement en un entier. Le résultat est une collection d'entiers, qui est ensuite convertie en tableau à l'aide de la méthode ToArray.

Alternatives utilisant Array.ConvertAll

Une autre façon de résoudre ce problème est d'utiliser la méthode Array.ConvertAll. Cette méthode accepte un tableau et une expression lambda comme arguments et renvoie un nouveau tableau contenant le résultat de l'application de l'expression lambda à chaque élément du tableau d'entrée. Dans ce cas, l'expression lambda peut être int.Parse :

<code class="language-csharp">int[] myInts = Array.ConvertAll(arr, int.Parse);</code>
Copier après la connexion
Copier après la connexion

Version courte utilisant Array.ConvertAll

Enfin, une version plus propre de la solution Array.ConvertAll peut être obtenue en omettant l'expression lambda. Cela se traduira par des lignes de code plus courtes et plus simples :

<code class="language-csharp">int[] myInts = Array.ConvertAll(arr, int.Parse);</code>
Copier après la connexion
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal