C#Clear()方法详解
在C#中,Clear()是一个常用的方法,其函数签名为:public void Clear()
。这个方法用于清除List集合中的所有元素,使其变为空集合。
具体而言,Clear()方法做两个主要方面的操作:删除所有元素,以及释放元素占用的存储空间。
下面,我们就详细介绍Clear()方法的使用。
基础用法
在 List 的对象上,我们可以直接使用 Clear() 方法来清空所有元素:
List<string> list = new List<string>() { "Hello", "World" };
Console.WriteLine($"当前List的长度为{list.Count}"); // 输出:当前List的长度为2
list.Clear(); // 清空所有元素
Console.WriteLine($"清空后,List的长度为{list.Count}"); // 输出:清空后,List的长度为0
注意事项
尽管在清空 List 的所有元素之后,List 集合的长度变为 0,但是这并不意味着在 C# 的运行时中,List 的实例将会被垃圾回收回收。
实际上,CLR 会维护一个叫做 Free List 的队列,用于存储已经被占用、但是还没有被垃圾回收的内存块。在调用 List.Clear 时,CLR 将会在 Free List 上加入一些内存块,来代表 List 的所有元素内存块。这些内存块会等待在GC活动的时候被回收。
示例及注意事项
下面我们介绍一个稍微复杂一些的例子:
List<string> list = new List<string>() { "Hello", "World" };
foreach (string str in list)
{
Console.WriteLine($"List中的元素是 {str}");
}
list.Clear();
foreach (string str in list)
{
Console.WriteLine($"Clear后,List中的元素是 {str}");
}
在该示例中,我们先建立一个有两个元素的 List 对象。在第一个 foreach 循环中,我们遍历了 List 集合中的所有元素,并在控制台上输出它们。接着,我们调用 Clear() 方法将 List 集合中的元素全部清除。最后,我们尝试再次遍历这个空集合,看看程序会如何表现。
需要注意的是,代码中第二个 foreach 循环并未输出任何结果。这是因为 List 集合已经空了,因此循环中没有任何元素可以被遍历。
以上就是 Clear() 方法的使用说明。希望这些信息可以帮助你更好地理解 List 集合类的操作方式。如果你对此有任何疑问,也欢迎在评论区留言,我们会在第一时间给出答复。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# Clear():从 ICollection