Это может звучать как вопрос новичка, но следующие:
string var;
if (var == null)
а также
string var;
if (var == string.Empty)
Тоже самое?
Duplicate
What's the Difference between String.Empty and Null? and In C#, should I use String.Empty or Null?
-1 Гортоку (теоретически) ... Найдите обман, прежде чем проголосовать за закрытие!
Нашел, Джон Б: stackoverflow.com/questions/151472/…
Хорошо, Горток - +1 к тебе (то есть закрыть).





Нет, они не такие.
string.Empty - это то же самое, что и "", который представляет собой реальный объект: строку нулевой длины. null означает, что объекта нет.
@Jay прав, они не то же самое. String.IsNullOrEmpty() - удобный метод проверки как на null, так и на "".
Нет, они не. Сначала проверяется, была ли переменная инициализирована или позже ей было присвоено значение «null». Второй проверяет, является ли значение переменной "" (пустым). Однако вы не должны использовать ни то, ни другое. Вместо этого вы должны использовать string.IsNullOrEmpty (var).
они не совпадают, реализация String.IsNullOrEmpty (string) в mscorlib демонстрирует это:
public static bool IsNullOrEmpty(string value)
{
if (value != null)
{
return (value.Length == 0);
}
return true;
}
извините, я новый пользователь на StackOverflow.com
+1 за напоминание людям перейти к источнику кода в учебных целях
Но иногда вы хотите знать, является ли строка NULL, и не имеет значения, что она пуста (в объектно-ориентированном дизайне). Например, у вас есть метод, и он вернет NULL или string., вы делаете это, потому что null означает, что операция завершилась неудачно, а пустая строка означает, что результата нет.
В некоторых случаях вы хотите узнать, не удалось ли оно или нет, прежде чем предпринимать какие-либо дальнейшие действия с другими объектами.
Дубликат. Я уже видел этот вопрос раньше. Вздох, теперь мне нужно нырнуть в глубины ТА, чтобы найти его.