Open In App

C# | Array.Clear() Method

Improve
Improve
Like Article
Like
Save
Share
Report

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 value
using 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]);
        }
    }
}


Output:

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 ArgumentNullException
using 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]);
        }
    }
}


Output:

Try to clear the element from null Array:

Exception Thrown: System.ArgumentNullException

Example 3: For IndexOutOfRangeException




// C# program to demonstrate
// Array.Clear() method
// for IndexOutOfRangeException
using 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]);
        }
    }
}


Output:

Array Before Operation:
10
20
30
40

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

Reference:



Last Updated : 19 Dec, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads