Bax*_*ter 1 c# linq string list
我正在寻找一种方便的方法来删除列表项与空字符串作为其值.
我知道我可以在加载到列表之前检查每个字符串以查看它是否为空.
List<string> items = new List<string>();
if (!string.IsNullOrEmpty(someString))
{
items.Add(someString);
}
Run Code Online (Sandbox Code Playgroud)
但是,这似乎有点麻烦,特别是如果我有很多字符串要添加到列表中.
或者,我可以加载所有字符串,无论是否为空:
List<string> items = new List<string>();
items.Add("one");
items.Add("");
items.Add("two")
Run Code Online (Sandbox Code Playgroud)
然后遍历列表,如果找到空字符串,则将其删除.
foreach (string item in items)
{
if (string.IsNullOrEmpty(item))
{
items.Remove(item);
}
}
Run Code Online (Sandbox Code Playgroud)
这些是我唯一的两个选择,也许Linq中有一些东西?
感谢您的帮助.
尝试:
items.RemoveAll(s => string.IsNullOrEmpty(s));
Run Code Online (Sandbox Code Playgroud)
或者你可以使用where以下方法过滤它们:
var noEmptyStrings = items.Where(s => !string.IsNullOrEmpty(s));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1492 次 |
| 最近记录: |