IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langages de programmation Discussion :

Tester si un objet est "null"


Sujet :

Langages de programmation

  1. #1
    Membre régulier Avatar de nicodn02
    Profil pro
    Consultant .NET
    Inscrit en
    Mars 2007
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant .NET

    Informations forums :
    Inscription : Mars 2007
    Messages : 263
    Points : 97
    Points
    97
    Par défaut Tester si un objet est "null"
    Bonjour,

    Pour tester si un objet est null, on utilise la syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (monObjet == null)
    {
       // Faire quelque chose
    }
    Ma question se porte sur le "sens" du test.
    Quelle est la différence entre le test ci-dessus, et le test suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if (null == monObjet)
    {
       // Faire quelque chose
    }
    Merci

    Nico

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Points : 28 119
    Points
    28 119
    Par défaut
    Bonjour,

    Aucune difference, si ce n'est si tu utilises un compilateur mal regle :

    Ce test :
    permet de detecter systematiquement les fautes de frappe du genre :
    car le compilateur va gueuler.

    Mais si tu as bien regle ton compilateur (c'est a dire que tu lui passes les bonnes options de compilation), tu as aussi un warning dans ce cas ci :
    En effet, dans ce dernier cas, le if n'a pas lieu d'etre : le resultat d'une affectation est la valeur de l'affectation (null ici), et donc ton code est equivalent a
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  3. #3
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Les deux syntaxes sont valides et font la même chose. C'est un peu comme si tu nous demandais la différence entre if (1 == 2) et if (2 == 1). Il n'y en a aucune. Je dirais par contre que la première syntaxe (if (objet == null)) est plus "naturelle" tandis que la seconde se veut d'être plus sécurisée. En effet, en prenant l'habitude d'écrire if (null == objet), on aura directement une erreur le jour où, par mégarde, on écrira if (null = objet). En effet, on ne peut pas affecter objet à null, null étant une constante comme 1, 2, etc. Si on a l'habitude d'écrire if (objet == null), le jour où, par mégardre, on écrira if (objet = null), on n'aura pas d'erreur car la syntaxe est aussi correcte mais ne compare pas objet et null ...

Discussions similaires

  1. Tester si un objet est null
    Par methodman225 dans le forum JPA
    Réponses: 2
    Dernier message: 04/02/2009, 10h02
  2. JavaME : tester si un objet est null
    Par ®om dans le forum Java ME
    Réponses: 4
    Dernier message: 31/01/2008, 10h18
  3. [C#]Question bête : Comment tester si un objet est créer?
    Par ben_ghost dans le forum Windows Forms
    Réponses: 5
    Dernier message: 08/08/2006, 20h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo