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?

Était-ce utile?

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");
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top