Une ligne de code C# pour convertir un tableau de chaînes en tableau d'entiers à l'aide de LINQ
En programmation, la manipulation des données dans différents formats est cruciale. Nous nous trouvons ici dans une situation : vous disposez d'un tableau d'entiers stocké sous forme de chaînes et devez le convertir en un véritable tableau d'entiers pour un traitement ultérieur.
LINQ (Language Integrated Query) fournit une solution intéressante pour cette tâche. La méthode Select
dans LINQ vous permet de transformer chaque élément d'un tableau à l'aide d'une fonction spécifiée. En utilisant la fonction int.Parse
, vous pouvez convertir chaque chaîne en son entier correspondant :
<code class="language-csharp">int[] myInts = arr.Select(int.Parse).ToArray();</code>
Cette ligne de code termine la conversion en une seule ligne. Il parcourt le tableau, analyse chaque chaîne en un entier et stocke le résultat dans un nouveau tableau d'entiers.
Il existe une alternative utilisant la méthode ConvertAll
:
<code class="language-csharp">int[] myInts = Array.ConvertAll(arr, int.Parse);</code>
Cette méthode fonctionne spécifiquement avec les tableaux et effectue une conversion similaire, mais elle nécessite une expression lambda explicite comme fonction de conversion.
Enfin, vous pouvez gérer les erreurs de conversion potentielles avec élégance en utilisant la fonction int.TryParse
:
<code class="language-csharp">int[] myInts = Array.ConvertAll(arr, s => { int j; return Int32.TryParse(s, out j) ? j : 0; });</code>
Cette méthode garantit que tous les éléments de chaîne non valides sont remplacés par une valeur par défaut (0 dans ce cas).
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!