Question
question stupide, mais cette déclaration est sans valeur
int a;
if (a != null)
étant donné qu'une var entier est automatiquement réglé à zéro par le compilateur lorsque défini
pour vérifier entiers toujours vérifier si> = 0 correct?
La solution
Le compilateur définit la valeur d'une variable primitive à sa valeur « par défaut » si vous ne l'attribuez pas. La valeur par défaut de int est 0. Donc oui, la comparaison que vous mentionnez ne fait pas vraiment quoi que ce soit.
Si vous avez besoin d'un nullable int dans votre code, vous devez utiliser le type "int?" "Nullable".
Si votre int est annulable, la comparaison que vous mentionnez pourrait être utile.
Autres conseils
int est une classe, non pas égal à null
Oui, sauf si l'entier se trouve être un type Nullable.
int? myInt = null;
if(myInt == null)
{
Console.WriteLine("myInt was null.");
}
En supposant par votre balise et la syntaxe c'est C #, avez-vous essayé int.TryParse (...) dans votre scénario particulier? Pas vraiment sûr de ce que vous essayez de faire à partir du code fourni -. Comme Andy mentionné si votre int est annulable le chèque nul pourrait être utile
Un est un type int
de valeur et ne sera jamais null
, à moins que vous déclarez comme un entier annulable:
int? i = null;
if (i == null)
Console.WriteLine("it's null");