Open In App

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

Last Updated : 01 Feb, 2019
Comments
Improve
Suggest changes
Like Article
Like
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: CSharp
// 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: CSharp
// 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:

Next Article
Article Tags :

Similar Reads