我有Dictionary
存储Skilodge
的成员,我想要一种删除所有成员的方法。目前,它似乎只是删除一个。这是我尝试的方法:
public void DeleteAll()
{
for (int i = 0; i < Skiers.Count; i = i + 1)
{
string iString = i.ToString();
Skiers.Remove(iString);
}
}
答案 0 :(得分:6)
使用Clear
方法检查此link
Skiers.Clear()
答案 1 :(得分:4)
您可以使用Skiers.Clear();
删除给定词典的所有现有值,并且可以使用Skiers= new Dictionary<T,T>()
来获取新词典(新实例);
Dictionary.Clear Method ()将从词典中删除所有键和值。
您也可以尝试条件删除,让字典可以定义和初始化,如下所示:
Dictionary<string, String> dictSample = new Dictionary<string, string>();
dictSample.Add("a", "value 1");
dictSample.Add("b", "value 1");
dictSample.Add("c", "value 12");
dictSample.Add("d", "value 10");
dictSample.Add("e", "value 1");
您需要删除某些在其值部分中具有value 1
的特定项目,然后您可以使用以下代码将其删除:
var removable = dictSample.Where(x => x.Value == "value 1").Select(x => x.Key).ToList();;
foreach (var dictItem in removable)
{
dictSample.Remove(dictItem);
}