【发布时间】:2009-12-21 10:17:13
【问题描述】:
如何使用 LINQ 从字符串数组中删除“NULL 行”?
采用这种结构(String[,]):
"Hello", "World", "Foo", "Bar"
null, null, null, null
null, null, null, null
"Hello", "World", "Foo", "Bar"
"Hello", "World", "Foo", "Bar"
null, null, "Foo", "Bar"
应该删除第一行之后的两行。结构中的最后一行不应该。
【问题讨论】:
-
你所要求的是不可能的。如果要从数组中删除项目,则必须创建一个新数组并复制要保留的项目,即使您使用 LINQ 为您完成。
-
Linq 很难对 [,] 中定义的数组进行迭代。您是否希望在 Linq 中证明它可以完成,或者因为循环是丑陋的代码? Linq 可能不是我们所有问题的答案:)
-
@Mikael Svenson:使用 LINQ 的一行代码比 5-6 行循环更具可读性。
-
@roosteronacid 是的,如果存在这样的单行的话。