Каков наилучший способ написания надежного кода, чтобы переменная могла быть проверена для пустого и пустого.Нулевые и пустые значения
например.
string a;
if((a != null) && (a.Length() > 0))
{
//do some thing with a
}
Каков наилучший способ написания надежного кода, чтобы переменная могла быть проверена для пустого и пустого.Нулевые и пустые значения
например.
string a;
if((a != null) && (a.Length() > 0))
{
//do some thing with a
}
Для строк есть
if (String.IsNullOrEmpty(a))
Лучше использовать String.IsNullOrEmpty() –
'string' beats' String', потому что вам не нужно нажимать shift, делая вашу клавиатуру дольше, и вы будете менее уставшей, плюс вам не понадобится 'using System;' для версии в нижнем регистре. (шутки, применение и +1 для правильной капитализации при явном доступе к методу статического класса) –
Начиная с версии 2.0 вы можете использовать IsNullOrEmpty.
string a;
...
if (string.IsNullOrEmpty(a)) ...
строк:
string a;
if(!String.IsNullOrEmpty(a))
{
//do something with a
}
для определенных типов можно создать метод Удлинитель примечание, что я использовал HasValue вместо IsNullorEmpty, потому что 99% случаев вы должны будете использовать! -оператором если вы используете IsNullOrEmpty, которую я считаю совершенно нечитаемым
public static bool HasValue(this MyType value)
{
//do some testing to see if your specific type is considered filled
}
вы можете определить метод расширения, чтобы позволить вам сделать это на многих вещах:
static public bool IsNullOrEmpty<T>(this IEnumerable <T>input)
{
return input == null || input.Count() == 0;
}
Он уже существует как статический метод для класса System.String
для строк, как указано.
, цитируя John Skeet: Однако вы обязательно должны использовать Any(). Таким образом, нужно проверить только наличие первого элемента. Это будет невероятно дешево для обычных реализаций ICollection
И если вы используете .NET 4.0, вы можете взглянуть на String.IsNullOrWhiteSpace.
if(string.IsNullOrEmpty(string name))
{
/// write ur code
}
Я считаю, Apache Commons.Lang StringUtils (Java) 's имен намного проще: IsEmpty() проверяет нуль или пустую строку, ISBLANK() проверяет NULL, пустая строка или пробелы только. isNullOrEmpty может быть более описательным, но пустым и null является, в большинстве случаев, вы используете его, то же самое.
Где вы узнали о C# .Net? Такого нет. –