C# | Array.Clear() Method - GeeksforGeeks

19 Dec, 2019
This method is used to set a range of elements in an array to the default value of each element type.
Syntax:
public static void Clear (Array array, int index, int length);
Parameters:
array: It is an array whose elements need to be cleared.index: It is the starting index of the range of elements to clear.length: It is the number of elements to clear.
Exceptions:
ArgumentNullException: if array is null
IndexOutOfRangeException: if the index is less than the lower bound of the array or the length is less than zero or the sum of index and length is greater than the size of the array.
Below are the examples to illustrate the Array.Clear() Method:
Example 1:
// C# program to demonstrate Array.Clear()// method for int type valueusing System;using System.Collections.Generic;  public class GFG {      // Main Method    public static void Main()    {          // Creating and initializing new the String        int[] myArr = {10, 20, 30, 40};          // Display the values of the myArr.        Console.WriteLine("Array Before Operation:");          // calling the PrintIndexAndValues() method         PrintIndexAndValues(myArr);        Console.WriteLine();          Array.Clear(myArr, 1, 2);          // Display the values of myArr        Console.WriteLine("Array After Operation:");          // calling the PrintIndexAndValues() method        PrintIndexAndValues(myArr);    }      // Defining the method PrintIndexAndValues     public static void PrintIndexAndValues(int[] myArr)    {        for (int i = 0; i < myArr.Length; i++) {            Console.WriteLine("{0}", myArr[i]);        }    }}
Array Before Operation:
10
20
30
40

Array After Operation:
10
0
0
40

Example 2: For ArgumentNullException
// C# program to demonstrate// Array.Clear() method// for ArgumentNullExceptionusing System;using System.Collections.Generic;  public class GFG {      public static void Main()    {          try {              // Creating and initializing             // new the Int with null            int[] myArr = null;              // Clearing the myArr            // using Clear() method            Console.WriteLine("Try to clear the element from null Array:");            Array.Clear(myArr, 1, 2);              // Display the values of myArr            Console.WriteLine("Array after operation :");              // calling the PrintIndexAndValues() method             PrintIndexAndValues(myArr);        }        catch (ArgumentNullException e) {              Console.WriteLine();            Console.Write("Exception Thrown: ");            Console.Write("{0}", e.GetType(), e.Message);        }        catch (IndexOutOfRangeException e) {              Console.WriteLine();            Console.Write("Exception Thrown: ");            Console.Write("{0}", e.GetType(), e.Message);        }    }      // Defining the method PrintIndexAndValues     public static void PrintIndexAndValues(int[] myArr)    {        for (int i = 0; i < myArr.Length; i++) {            Console.WriteLine("{0}", myArr[i]);        }    }}
Try to clear the element from null Array:

Exception Thrown: System.ArgumentNullException

Example 3: For IndexOutOfRangeException
// C# program to demonstrate// Array.Clear() method// for IndexOutOfRangeExceptionusing System;using System.Collections.Generic;  public class GFG {      // Main Method    public static void Main()    {          try {              // Creating and initializing new Int array            int[] myArr = {10, 20, 30, 40};              // Display the values of myArr            Console.WriteLine("Array Before Operation:");              // calling the PrintIndexAndValues() method            PrintIndexAndValues(myArr);            Console.WriteLine();              // Clearing the myArr            // using Clear() method            Console.WriteLine("Taking index out of bound:");            Array.Clear(myArr, -1, 2);              // Display the values of myArr            Console.WriteLine("Array After Operation:");              // calling the PrintIndexAndValues() method             PrintIndexAndValues(myArr);        }        catch (ArgumentNullException e) {              Console.Write("Exception Thrown :");            Console.Write("{0}", e.GetType(), e.Message);        }        catch (IndexOutOfRangeException e) {            Console.Write("Exception Thrown :");            Console.Write("{0}", e.GetType(), e.Message);        }    }      // Defining the method PrintIndexAndValues     public static void PrintIndexAndValues(int[] myArr)    {        for (int i = 0; i < myArr.Length; i++) {            Console.WriteLine("{0}", myArr[i]);        }    }}
Array Before Operation:
10
20
30
40

Taking index out of bound:
Exception Thrown :System.IndexOutOfRangeException

Reference:
https://docs.microsoft.com/en-us/dotnet/api/system.array.clear?view=netframework-4.7.2
shubham_singh
CSharp-Arrays
CSharp-method
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
C# Dictionary with examples
C# | Method Overriding
Destructors in C#
Difference between Ref and Out keywords in C#
C# | Delegates
C# | String.IndexOf( ) Method | Set - 1
C# | Constructors
Extension Method in C#
Introduction to .NET Framework
C# | Class and Object