This method is used to return a read-only wrapper for the specified array.
Syntax:
public static System.Collections.ObjectModel. ReadOnlyCollection<T> AsReadOnly<T> (T[] array);
Here, T is the type of element of the array.
Return Value: This method return the a read-only ReadOnlyCollection<T> wrapper .
Exception: This method throws ArgumentNullException if the array is null.
Below are the examples to illustrate the Array.AsReadOnly(T[]) Method:
Example 1:
// C# program to demonstrate // AsReadOnly() method using System;
using System.Collections.Generic;
public class GFG {
// Main Method
public static void Main()
{
// Creating and initializing new the String
String[] myArr = { "Sun" , "Mon" , "Tue" , "Thu" };
// Display the values of the myArr.
Console.WriteLine( "Initial Array:" );
// calling the PrintIndexAndValues()
// method to print
PrintIndexAndValues(myArr);
// Create a read-only IList
// wrapper around the array.
IList<String> myList = Array.AsReadOnly(myArr);
// Display the values of the read-only myList.
Console.WriteLine( "Read-only Array: " );
// calling the PrintIndexAndValues()
// method to print
PrintIndexAndValues(myList);
}
// Defining the method
// PrintIndexAndValues
public static void PrintIndexAndValues(String[] myArr)
{
for ( int i = 0; i < myArr.Length; i++) {
Console.WriteLine( "{0}" , myArr[i]);
}
Console.WriteLine();
}
// Defining the method
// PrintIndexAndValues
public static void PrintIndexAndValues(IList<String> myList)
{
for ( int i = 0; i < myList.Count; i++) {
Console.WriteLine( "{0}" , myList[i]);
}
}
} |
Output:
Initial Array: Sun Mon Tue Thu Read-only Array: Sun Mon Tue Thu
Example 2:
// C# program to demonstrate // AsReadOnly() method // For ArgumentNullException using System;
using System.Collections.Generic;
public class GFG {
// Main Method
public static void Main()
{
try {
// Creating and initializing new
// the String with a null value
String[] myArr = null ;
// Create a read-only IList
// wrapper around the array.
IList<String> myList = Array.AsReadOnly(myArr);
// Display the values of
// the read-only myList.
Console.WriteLine( "Read-only Array:" );
// calling the PrintIndexAndValues()
// method to print
PrintIndexAndValues(myList);
}
catch (ArgumentNullException e) {
Console.Write( "Exception Thrown: " );
Console.Write( "{0}" , e.GetType(), e.Message);
}
}
// Defining the method PrintIndexAndValues
public static void PrintIndexAndValues(String[] myArr)
{
for ( int i = 0; i < myArr.Length; i++) {
Console.WriteLine( "{0}" , myArr[i]);
}
Console.WriteLine();
}
// Defining the method PrintIndexAndValues
public static void PrintIndexAndValues(IList<String> myList)
{
for ( int i = 0; i < myList.Count; i++) {
Console.WriteLine( "{0}" , myList[i]);
}
}
} |
Output:
Exception Thrown: System.ArgumentNullException
Reference: