-3

我有一本字典

Dictionary<string, List<string>> dictGenSubs = new Dictionary<string, List<string>>();

如何确保字典的任何记录中都没有空格?

4

2 回答 2

2

我假设您只是在谈论列表中的字符串。

要实现该目标,您可以使用以下代码:

dictGenSubs = dictGenSubs.ToDictionary(
                  x => x.Key,
                  x => x.Value
                        .Select(x => x.Replace(" ", string.Empty))
                        .ToList());

这将创建一个新字典,其中包含新列表作为字典的值。每个列表中的每个字符串都将在添加到新列表之前进行调整。

更有效的方法是更新现有字典和现有列表:

foreach(var list in dictGenSubs.Values)
{
    for(int i = 0; i < list.Count; ++i)
        list[i] = list[i].Replace(" ", string.Empty);
}
于 2013-02-13T12:16:27.443 回答
0

您是指每个值的任何字符串中的任何空格吗?这是使用 LINQ 的一种简洁低效的方法:

bool hasWhitespace = dictGenSubs.SelectMany(kv => kv.Value)
       .Any(s => s.Any(char.IsWhiteSpace));
于 2013-02-13T12:22:58.617 回答