正在从 List<T> 中删除所有元素
Removing all elements from List<T>
我试图在用户单击消息框上的“是”时删除所有元素,但我不太确定如何在单击按钮时删除所有项目。我可以删除索引处的元素,但不能删除所有元素。
这就是我如何成功删除索引处的元素:
public void DeleteAt(int anIndex)
{
if(CheckIndex(anIndex))
m_list.RemoveAt(anIndex);
}
但我想删除 所有 个元素。
我试过这样做:
public void DeleteAll()
{
m_list.RemoveAll();
}
但是不行,说是RemoveAll();
需要一个参数,但是不知道是什么参数。
List<T>.Clear()
就是你想要的:
Removes all elements from the List.
所以在你的例子中:
public void DeleteAll()
{
m_list.Clear();
}
是m_list
一个List<T>
? Then the Clear()
方法从中删除所有项目,这就是你想要的。
至于List<T>.RemoveAll()
,文档已经说的很清楚了。基本上你需要传递一个 "filters" 你的列表的委托方法。在您的情况下,您可以传递始终 returns true
的内容,但没有必要,因为您已经拥有 Clear()
我试图在用户单击消息框上的“是”时删除所有元素,但我不太确定如何在单击按钮时删除所有项目。我可以删除索引处的元素,但不能删除所有元素。
这就是我如何成功删除索引处的元素:
public void DeleteAt(int anIndex)
{
if(CheckIndex(anIndex))
m_list.RemoveAt(anIndex);
}
但我想删除 所有 个元素。 我试过这样做:
public void DeleteAll()
{
m_list.RemoveAll();
}
但是不行,说是RemoveAll();
需要一个参数,但是不知道是什么参数。
List<T>.Clear()
就是你想要的:
Removes all elements from the List.
所以在你的例子中:
public void DeleteAll()
{
m_list.Clear();
}
是m_list
一个List<T>
? Then the Clear()
方法从中删除所有项目,这就是你想要的。
至于List<T>.RemoveAll()
,文档已经说的很清楚了。基本上你需要传递一个 "filters" 你的列表的委托方法。在您的情况下,您可以传递始终 returns true
的内容,但没有必要,因为您已经拥有 Clear()