我有这个:
List<string> s = new List<string>{"", "a", "", "b", "", "c"};
我想在("")
不使用foreach
语句的情况下快速(可能通过 LINQ)从中删除所有空元素,因为这会使代码看起来很难看。
您可以使用List.RemoveAll
:
C#
s.RemoveAll(str => String.IsNullOrEmpty(str));
VB.NET
s.RemoveAll(Function(str) String.IsNullOrEmpty(str))
List.RemoveAll
用withString.IsNullOrEmpty()
方法检查;
指示指定的字符串是 null 还是 Empty 字符串。
s.RemoveAll(str => string.IsNullOrEmpty(str));
这是一个DEMO
.
s = s.Where(val => !string.IsNullOrEmpty(val)).ToList();
我写下面的代码来删除空白值
List<string> s = new List<string>{"", "a", "", "b", "", "c"};
s = s.Where(t => !string.IsNullOrWhiteSpace(t)).Distinct().ToList();