System.Array.Clear 方法
方法描述
将 Array 中的一系列元素设置为零、false 或 null,具体取决于元素类型。
语法定义(C# System.Array.Clear 方法 的用法)
public static void Clear( Array array, int index, int length )
参数/返回值
参数值/返回值 | 参数类型/返回类型 | 参数描述/返回描述 |
---|---|---|
array | System-Array | Array ,需要清除其元素。 |
index | System-Int32 | 要清除的一系列元素的起始索引。 |
length | System-Int32 | 要清除的元素数。 |
返回值 | void |
提示和注释
将引用类型元素设置为 null。 将布尔类型元素设置为 false。 将其他值类型元素设置为零。
在多维数组中,已清除元素会分布到多行上。
此方法仅清除元素的值,而不删除元素本身。 Array 具有固定大小;因此,不能添加或移除元素。
此方法的运算复杂度为 O(n),其中 n 是 length。
System.Array.Clear 方法例子
下面的示例演示如何对多维数组使用 Clear 方法。
using System; class Example { public static void Main() { Console.WriteLine("One dimension (Rank=1):"); int[] numbers1 = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; for (int i = 0; i < 9; i++) { Console.Write("{0} ", numbers1[i]); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Array.Clear(numbers1, 2, 5)"); Array.Clear(numbers1, 2, 5); for (int i = 0; i < 9; i++) { Console.Write("{0} ", numbers1[i]); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Two dimensions (Rank=2):"); int[,] numbers2 = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { Console.Write("{0} ", numbers2[i, j]); } Console.WriteLine(); } Console.WriteLine(); Console.WriteLine("Array.Clear(numbers2, 2, 5)"); Array.Clear(numbers2, 2, 5); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { Console.Write("{0} ", numbers2[i, j]); } Console.WriteLine(); } Console.WriteLine("Three dimensions (Rank=3):"); int[, ,] numbers3 = {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}, {{9, 10}, {11, 12}}}; for (int i = 0; i < 2; i++) { for (int j = 0; j < 2; j++) { for (int k = 0; k < 2; k++) { Console.Write("{0} ", numbers3[i, j, k]); } Console.WriteLine(); } Console.WriteLine(); } Console.WriteLine("Array.Clear(numbers3, 2, 5)"); Array.Clear(numbers3, 2, 5); for (int i = 0; i < 2; i++) { for (int j = 0; j < 2; j++) { for (int k = 0; k < 2; k++) { Console.Write("{0} ", numbers3[i, j, k]); } Console.WriteLine(); } Console.WriteLine(); } } } /* This code example produces the following output: * * One dimension (Rank=1): * 1 2 3 4 5 6 7 8 9 * * Array.Clear(numbers1, 2, 5) * 1 2 0 0 0 0 0 8 9 * * Two dimensions (Rank=2): * 1 2 3 * 4 5 6 * 7 8 9 * * Array.Clear(numbers2, 2, 5) * 1 2 0 * 0 0 0 * 0 8 9 * * Three dimensions (Rank=3): * 1 2 * 3 4 * * 5 6 * 7 8 * * Array.Clear(numbers3, 2, 5) * 1 2 * 0 0 * * 0 0 * 0 8 */
异常
异常 | 异常描述 |
---|---|
ArgumentNullException | array 为 null。 |
IndexOutOfRangeException |
|
版本信息
.NET Framework 受以下版本支持:4、3.5、3.0、2.0、1.1、1.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1 受以下版本支持:
适用平台
Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。