这可能已被问到某处,但我无法找到它。
我有一个像这样的字符串列表:
public static List<string> AnimalsL = new List<string>();
public static void ListAnimals()
{
AnimalsL.Add("Animal one");
AnimalsL.Add("Animal two");
}
public static void ReturnAnimals()
{
string[] Animals = AnimalsL.ToArray();
if(AnimalsL != null)
{
for(int Index = 0; Index < Animals.Length; Index++)
{
System.Windows.Forms.MessageBox.Show(Animals[Index].ToString());
}
}
}
[b]上面是工作代码[/ b]
所以,正如标题所说,我真正的问题是:如何完全清空字符串列表?
例如,如果动物类型是蛇或狗,我可能想要存储动物名称,我不希望它们进入同一类别,或者如果我想确保列表为空之前加入它,或者在我对动物使用我的方法后清除它。
我在考虑宣布动物[] = string.Empty,但这实际上并不清楚这个列表..
答案 0 :(得分:2)
使用List<T>.Clear()
方法从列表实例中删除所有条目。
答案 1 :(得分:2)
有两种方法可以做到这一点。
1
AnimalsL.Clear(); // clears all the items in the list
2
AnimalsL = new List<string>(); // assigns a new instance
实际上,创建一个新实例比调用Clear方法更快,但是如果你想保留对该对象的引用,那么调用Clear会更好。
以下是Clear() vs new List
Link