Cliquez pour évaluer et commenter
MSDN
MSDN Library
Visual Studio 2005
Documentation Visual Studio
Visual C#
Référence C#
Mots clés C#
Mots clés des opérateurs
 as
Réduire tout/Développer tout Réduire tout
Cette page est spécifique à
Microsoft Visual Studio 2005/.NET Framework 2.0

D'autres versions sont également disponibles pour :
Référence du langage C#
as (Référence C#)

Utilisé pour exécuter des conversions entre des types référence compatibles. Par exemple :

string s = someObject as string;
if (s != null)
{
    // someObject is a string.
}

L'opérateur as est semblable à une opération de cast ; toutefois, si la conversion n'est pas possible, as retourne null au lieu de déclencher une exception. De manière plus formelle, une expression de la forme,

expression as type

est équivalente à,

expression is type ? (type)expression : (type)null

si ce n'est que expression est évaluée une seule fois.

Notez que l'opérateur as n'effectue que des conversions de référence et des conversions boxing. L'opérateur as ne permet pas d'effectuer d'autres conversions, telles que des conversions définies par l'utilisateur, qui doivent plutôt être effectuées à l'aide d'expressions de cast.

// cs_keyword_as.cs
// The as operator.
using System;
class Class1
{
}

class Class2
{
}

class MainClass
{
    static void Main()
    {
        object[] objArray = new object[6];
        objArray[0] = new Class1();
        objArray[1] = new Class2();
        objArray[2] = "hello";
        objArray[3] = 123;
        objArray[4] = 123.4;
        objArray[5] = null;

        for (int i = 0; i < objArray.Length; ++i)
        {
            string s = objArray[i] as string;
            Console.Write("{0}:", i);
            if (s != null)
            {
                Console.WriteLine("'" + s + "'");
            }
            else
            {
                Console.WriteLine("not a string");
            }
        }
    }
}

Sortie

 
0:not a string
1:not a string
2:'hello'
3:not a string
4:not a string
5:not a string

Pour plus d'informations, consultez les sections suivantes dans Spécifications du langage C#.

  • 6 Conversions

  • 7.9.10 Opérateur as

Contenu de la communauté   Qu'est-ce que le Contenu de la communauté ?
Ajouter du contenu RSS  Annotations
L'opérateur 'as' peut fonctionner même si l'opérande "expression" est null.      Gilles TOURREAU - MVP   |   Modifier   |   Afficher l'historique

Si l'opérande "expression" est null, l'opérateur as fonctionnera sans problème et retournera null.

object objetNull = null;
string s = objetNull as string;
//s vaut null

Cela implique que si la valeur retournée par l'opérateur as est null alors soit :

  • L'objet "expression" n'est pas du type "type".
  • L'objet "expression" est null.
Marquer comme ContentBug
Processing
© 2009 Microsoft Corporation. Tous droits réservés. Conditions d'utilisation | Marques | Confidentialité
Page view tracker