C# | Check if an array is read-only or not
Last Updated :
11 Jul, 2025
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);
}
}
}
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);
}
}
}
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: