Вопрос
глупый вопрос, но это утверждение бесполезно
int a;
if (a != null)
поскольку целочисленная переменная автоматически устанавливается компилятором в значение null при определении
для проверки целых чисел всегда проверяйте правильность >= 0?
Решение
Компилятор устанавливает для примитивной переменной значение «по умолчанию», если вы ее не присвоили.Значение по умолчанию int — 0.Так что да, сравнение, о котором вы упомянули, на самом деле ничего не дает.
Если вам нужен nullable int в вашем коде, вы должны использовать «nullable» тип «int?».
Если ваш int имеет значение NULL, то упомянутое вами сравнение может быть полезным.
Другие советы
int — это класс, не равный нулю
Да, если только целое число не является типом, допускающим значение NULL.
int? myInt = null;
if(myInt == null)
{
Console.WriteLine("myInt was null.");
}
Предполагая по вашему тегу и синтаксису, что это C#, пробовали ли вы int.TryParse(...) в вашем конкретном сценарии?Не совсем уверен, что вы пытаетесь сделать из предоставленного кода - как упомянул Энди, если ваш int имеет значение NULL, проверка нуля может быть полезна.
Ан int
является типом значения и никогда не будет null
, если только вы не объявите его как целое число, допускающее значение NULL:
int? i = null;
if (i == null)
Console.WriteLine("it's null");