Open In App

C# | Check if an array is read-only or not

Improve
Improve
Like Article
Like
Save
Share
Report

Array.IsReadOnly Property is used to get a value that indicates whether the Array is read-only or not.

Syntax:

public bool IsReadOnly { get; }

Property Value: This property always returns false for all arrays.

Below programs illustrate the use of above-discussed property:

Example 1:




// C# program to illustrate
// IsReadOnly Property of
// Array class
using System;
namespace geeksforgeeks {
  
class GFG {
  
    // Main Method
    public static void Main()
    {
  
        // declares an 1D Array of string
        string[] topic;
  
        // assigning null to array
        topic = new string[] { null };
  
        // Here we check whether is
        // array of fixed size or not
        Console.WriteLine("Result: " + topic.IsReadOnly);
    }
}
}


Output:

Result: False

Example 2:




// C# program to illustrate
// IsReadOnly Property of
// Array class
using System;
namespace geeksforgeeks {
  
class GFG {
  
    // Main Method
    public static void Main()
    {
  
        // Two-dimensional array 
        int[, ] arr = new int[, ] {{1, 2}, 
                                   {3, 4},  
                                   {5, 6},  
                                   {7, 8}}; 
  
  
        // Here we check whether is
        // array of fixed size or not
        Console.WriteLine("Result: " + arr.IsReadOnly);
    }
}
}


Output:

Result: False

Note:

  • Array implements the IsReadOnly property because it is needed by the System.Collections.IList interface.
  • An array which is read-only does not allow the addition, removal, or modification of elements after the creation of an array.
  • If a user requires a read-only collection, then he or she must use a System.Collections class which implements the System.Collections.IList interface.
  • If a user cast or convert an array to an IList interface object, the IList.IsReadOnly property returns false. However, if the user cast or convert an array to an IList<T> interface, the IsReadOnly property returns true.
  • Retrieving the value of this property is an O(1) operation.

Reference:



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