Cette documentation est archivée et n’est pas conservée.

Type.IsArrayImpl, méthode

Mise à jour : novembre 2007

En cas de substitution dans une classe dérivée, implémente la propriété IsArray et détermine si Type est un tableau.

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)

protected abstract bool IsArrayImpl()
protected abstract boolean IsArrayImpl()
protected abstract function IsArrayImpl() : boolean

Valeur de retour

Type : System.Boolean
true si Type est un tableau ; sinon, false.

Une instance de la classe Array doit retourner false, car il s'agit d'un objet et non d'un tableau.

L'exemple suivant substitue la méthode IsArrayImpl dans la classe MyTypeDelegator, vérifie si une variable est un tableau et affiche le résultat.

using System;
using System.Reflection;
public class MyTypeDelegator : TypeDelegator
{
    public string myElementType = null;
    public Type myType;
    public MyTypeDelegator(Type myType) : base(myType)
    {
        this.myType = myType;
    }
    // Override IsArrayImpl().
    protected override bool IsArrayImpl()
    {
        // Determine whether the type is an array.
        if(myType.IsArray)
        {
            myElementType = "array";
            return true;
        }
        // Return false if the type is not an array.
        return false;  
    }
}
public class Type_IsArrayImpl
{
    public static void Main()
    {
        try
        {
            int myInt = 0 ; 
            // Create an instance of an array element.
            int[] myArray = new int[5];
            MyTypeDelegator myType = new MyTypeDelegator(myArray.GetType());
            Console.WriteLine("\nDetermine whether the variable is an array.\n");
            // Determine whether myType is an array type.  
            if( myType.IsArray)
                Console.WriteLine("The type of myArray is {0}.", myType.myElementType);
            else
                Console.WriteLine("myArray is not an array.");
            myType = new MyTypeDelegator(myInt.GetType());

            // Determine whether myType is an array type. 
            if( myType.IsArray)
                Console.WriteLine("The type of myInt is {0}.", myType.myElementType);
            else
                Console.WriteLine("myInt is not an array.");
        }
        catch( Exception e )
        {
            Console.WriteLine("Exception: {0}", e.Message );
        }
    }
}


import System.*;
import System.Reflection.*;

public class MyTypeDelegator extends TypeDelegator
{
    public String myElementType = null;
    public Type myType;

    public MyTypeDelegator(Type myType)
    {
        super(myType);
        this.myType = myType;
    } //MyTypeDelegator

    // Override IsArrayImpl().
    protected boolean IsArrayImpl()
    {
        // Determine whether the type is an array.
        if (myType.get_IsArray()) {
            myElementType = "array";
            return true;
        }
        // Return false if the type is not an array.
        return false;
    } //IsArrayImpl
} //MyTypeDelegator

public class Type_IsArrayImpl
{
    public static void main(String[] args)
    {
        try {
            int myInt = 0;
            // Create an instance of an array element.
            int myArray[] = new int[5];
            MyTypeDelegator myType = new MyTypeDelegator(myArray.GetType());
            Console.WriteLine("\nDetermine whether the variable is an array.\n");
            // Determine whether myType is an array type.  
            if (myType.get_IsArray()) {
                Console.WriteLine("The type of myArray is {0}.", myType.
                    myElementType);
            }
            else {
                Console.WriteLine("myArray is not an array.");
            }
            myType = new MyTypeDelegator(((System.Int32)myInt).GetType());
            // Determine whether myType is an array type. 
            if (myType.get_IsArray()) {
                Console.WriteLine("The type of myInt is {0}.", myType.
                    myElementType);
            }
            else {
                Console.WriteLine("myInt is not an array.");
            }
        }
        catch (System.Exception e) {
            Console.WriteLine("Exception: {0}", e.get_Message());
        }
    } //main
} //Type_IsArrayImpl


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC, Xbox 360

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Pris en charge dans : 3.5, 2.0, 1.0

XNA Framework

Pris en charge dans : 2.0, 1.0
Afficher: