Пустые и пустые значения - PullRequest
4 голосов
/ 25 мая 2010

Каков наилучший способ написания надежного кода, чтобы можно было проверить переменную на пустое и пустое.

, например

string a;

if((a != null) && (a.Length() > 0))
{
    //do some thing with a
}

Ответы [ 7 ]

7 голосов
/ 25 мая 2010

Для строк есть

if (String.IsNullOrEmpty(a))
3 голосов
/ 25 мая 2010

И если вы используете .NET 4.0, вы можете взглянуть на String.IsNullOrWhiteSpace .

3 голосов
/ 25 мая 2010

Вы можете определить метод расширения, который позволит вам делать это по многим причинам:

static public bool IsNullOrEmpty<T>(this IEnumerable <T>input)
{
    return input == null || input.Count() == 0;
}

Он уже существует как статический метод в классе System.String для строк, как уже указывалось.

1 голос
/ 25 мая 2010

С версии 2.0 вы можете использовать IsNullOrEmpty .

string a;
...
if (string.IsNullOrEmpty(a)) ...
0 голосов
/ 25 мая 2010

Я считаю, что Apache Commons.Lang StringUtils (Java) намного проще называет имена: isEmpty () проверяет наличие пустой или пустой строки, isBlank () проверяет наличие пустой или пустой строки или только пробел. isNullOrEmpty может быть более наглядным, но пустым и нулевым в большинстве случаев является одно и то же.

0 голосов
/ 25 мая 2010
if(string.IsNullOrEmpty(string name))
{
   ///  write ur code
}
0 голосов
/ 25 мая 2010

для строк:

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
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...