Pregunta
pregunta estúpida, pero esta afirmación no tiene ningún valor
int a;
if (a != null)
desde un var número entero se ajusta automáticamente a nula por el compilador cuando se define
para comprobar enteros siempre comprobar si a> 0 = correcto?
Solución
El compilador establece el valor de una variable primitiva a su valor "default" si no se asigna la misma. El valor por defecto de int es 0. Así que sí, la comparación que mencionas no hacer nada.
Si necesita un int anulable en su código que debe utilizar el "anulable" tipo "int?".
Si su int es anulable, entonces la comparación mencionas podría ser útil.
Otros consejos
int es una clase, no es igual a null
Sí a menos que el número entero pasa a ser un tipo anulable.
int? myInt = null;
if(myInt == null)
{
Console.WriteLine("myInt was null.");
}
Si se asume por su etiqueta y la sintaxis es C #, has int.TryParse (...) en su escenario particular? No es muy seguro de lo que estás tratando de hacer desde el código proporcionado -. Como Andy mencionó si su int es anulable el cheque nulo podría ser útil
Una int
es un tipo de valor y nunca será null
, a menos que se declara como un entero anulable:
int? i = null;
if (i == null)
Console.WriteLine("it's null");