HasValue et != null
pour les valeurs nullables en C# Le type de Nullable<T>
C# autorise les valeurs nullables, qui peuvent être des valeurs valides ou nulles. Pour vérifier si une valeur nullable a été attribuée, il existe deux manières courantes :
Nullable.HasValue
L'attribut de Nullable<T>
indique si une valeur a été attribuée. Il renvoie une valeur booléenne qui est vraie si la valeur est non nulle ou fausse si la valeur est nulle. HasValue
Nullable != null
Cette expression vérifie également si une valeur nullable n'est pas nulle. Il compare les valeurs nullables à null à l'aide de l'opérateur égal.
Équivalence en compilation Le compilateur
optimise ces vérifications en remplaçant les comparaisons par des appels à != null
. Cela signifie qu’il n’y a pas de différence significative en termes de performances ou de fonctionnalités entre les deux méthodes. HasValue
Préférences Le choix entre
et HasValue
est purement basé sur la lisibilité et les préférences. Certains développeurs préfèrent l'absence d'ambiguïté de != null
, tandis que d'autres trouvent le HasValue
concis plus lisible. != null
Exemple
<code class="language-csharp">int? a = null; // 使用 HasValue if (a.HasValue) { // ... } // 使用 != null if (a != null) { // ... }</code>
et HasValue
sont des moyens valables de vérifier les valeurs non nullables en C#. Le compilateur optimise ces vérifications pour avoir un comportement équivalent, faisant du choix une question de préférence du développeur et de lisibilité du code. != null
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!