一行 C# 代码用 LINQ 将字符串数组转换为整数数组
在编程中,操作不同格式的数据至关重要。这里我们遇到一种情况:你有一个存储为字符串的整数数组,需要将其转换为真正的整数数组以便进一步处理。
LINQ(语言集成查询)为此任务提供了一个简洁的解决方案。LINQ 中的 Select
方法允许你使用指定的函数转换数组中的每个元素。通过使用 int.Parse
函数,你可以将每个字符串转换为其对应的整数:
<code class="language-csharp">int[] myInts = arr.Select(int.Parse).ToArray();</code>
这一行代码在一行中完成了转换。它迭代数组,将每个字符串解析为 int,并将结果存储在一个新的整数数组中。
还有一种使用 ConvertAll
方法的替代方法:
<code class="language-csharp">int[] myInts = Array.ConvertAll(arr, int.Parse);</code>
此方法专门用于数组,执行类似的转换,但它需要一个显式的 lambda 表达式作为转换函数。
最后,你可以利用 int.TryParse
函数优雅地处理潜在的转换错误:
<code class="language-csharp">int[] myInts = Array.ConvertAll(arr, s => { int j; return Int32.TryParse(s, out j) ? j : 0; });</code>
此方法确保对于任何无效的字符串元素,都将替换为默认值(在本例中为 0)。
以上是如何在 C# 中使用 LINQ 在一行中将字符串数组转换为整数数组?的详细内容。更多信息请关注PHP中文网其他相关文章!