C# | Type.IsArrayImpl() Method
Type.IsArrayImpl() Method is used when overridden in a derived class, implements the IsArray property and determines whether the Type is an array.
Syntax: protected abstract bool IsArrayImpl ();
Return Value: This method returns true if the Type is an array otherwise, false.
Below programs illustrate the use of Type.IsArrayImpl() Method:
Example 1:
// C# program to demonstrate the // Type.IsArrayImpl() Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // creating and initializing object of MyClass MyClass mytype = new MyClass( typeof ( int )); // checking if mytype has any // elementtype or not if (mytype.HasElementType) Console.WriteLine( "The type of myArray is {0}." , mytype.elementtype); else Console.WriteLine( "myArray is not an array, pointer," + "or reference type." ); } } // Defining MyClass extended from TypeDelegator public class MyClass : TypeDelegator { // creating and initializing // elementtype with null public string elementtype = null ; // creating and initializing // type with null private Type type = null ; // Constructor public MyClass(Type type) : base (type) { this .type = type; } // Override Type.IsArrayImpl(). protected override bool IsArrayImpl() { // Determine whether the type is an array. if (type.IsArray) { elementtype = "array" ; return true ; } // Return false if the type is not // a reference, array, or pointer type. return false ; } } |
Output:
myArray is not an array, pointer,or reference type.
Example 2:
// C# program to demonstrate the // Type.IsArrayImpl() Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // creating and initializing object of MyClass MyClass mytype = new MyClass( typeof ( int [,,,, ])); // checking if mytype has // any elementtype or not if (mytype.HasElementType) Console.WriteLine( "The type of {0} is array." , mytype.type); else Console.WriteLine( "myArray is not an array," + "pointer, or reference type." ); } } // Defining MyClass extended from TypeDelegator public class MyClass : TypeDelegator { // creating and initializing // elementtype with null public string elementtype = null ; // creating and initializing // type with null public Type type = null ; // Constructor public MyClass(Type type) : base (type) { this .type = type; } // Override Type.IsArrayImpl(). protected override bool IsArrayImpl() { // Determine whether the // type is an array. if (type.IsArray) { elementtype = "array" ; return true ; } // Return false if the type is not // a reference, array, or pointer type. return false ; } } |
Output:
The type of System.Int32[,,,,] is array.
Reference:
Please Login to comment...