C#清除字符串组中的空字符串的方法
时间: 2024-10-13 18:02:21 浏览: 20
在C#中,如果你想从字符串组(List<string> 或集合(HashSet<string>)中清除所有的空字符串,你可以使用几种方法:
1. **Linq查询**:
```csharp
string[] emptyStrings = yourStringArray.Where(s => string.IsNullOrEmpty(s)).ToArray(); // 创建新数组只包含非空元素
yourStringArray = emptyStrings.Length > 0 ? yourStringArray.Except(emptyStrings).ToList() : yourStringArray; // 从原列表中移除空字符串
```
或者,
```csharp
yourStringList.RemoveAll(s => string.IsNullOrEmpty(s)); // 直接在List上操作
```
2. **循环遍历**:
```csharp
for (int i = yourStringList.Count - 1; i >= 0; i--)
{
if (string.IsNullOrEmpty(yourStringList[i]))
{
yourStringList.RemoveAt(i); // 使用RemoveAt方法删除空字符串
}
}
```
或者,
```csharp
foreach (var str in yourStringList.ToList())
{
if (string.IsNullOrEmpty(str))
{
yourStringList.Remove(str);
}
}
```
无论哪种方法,记得在完成操作后检查是否有空字符串留在原列表中,因为`RemoveAll`或`Where`会直接改变原始集合。
阅读全文