Pergunta

pergunta estúpida, mas esta afirmação é inútil

int a;

if (a != null)

desde um var número inteiro é automaticamente ajustado ao nulo pelo compilador quando definido

para verificar inteiros sempre verificar se a> = 0 correta?

Foi útil?

Solução

O compilador define o valor de uma variável primitiva ao seu valor "default" se você não atribuir a ele. O valor padrão de int é 0. Então, sim, a comparação que você menciona não fazer nada.

Se você precisa de um int anulável no seu código, você deve usar o "int?" "Anulável" tipo.

Se o seu int é anulável, então a comparação que você menciona pode ser útil.

Outras dicas

int é uma classe, não é igual a nulo

Sim, a menos que o inteiro passa a ser um tipo anulável.

int? myInt = null;

if(myInt == null)
{
    Console.WriteLine("myInt was null.");
}

Assumindo pelo seu tag & sintaxe é C #, você já tentou int.TryParse (...) em seu cenário particular? Não sei o que você está tentando fazer a partir do código fornecido -. Como Andy mencionado se o seu int é anulável a verificação nulo pode ser útil

Um int é um tipo de valor e nunca será null, a menos que você declará-lo como um número inteiro anulável:

int? i = null;
if (i == null)
    Console.WriteLine("it's null");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top