空值和空值

时间:2010-05-25 08:58:14

标签: c# .net robustness

编写健壮代码的最佳方法是什么,以便可以检查变量是否为null和空白。

e.g。

string a;

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

7 个答案:

答案 0 :(得分:7)

对于字符串,有

if (String.IsNullOrEmpty(a))

答案 1 :(得分:3)

您可以定义一个扩展方法,以允许您在许多方面执行此操作:

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

正如已经指出的那样,它已作为字符串System.String类的静态方法存在。

答案 2 :(得分:3)

如果您使用的是.NET 4.0,可能需要查看String.IsNullOrWhiteSpace

答案 3 :(得分:1)

从版本2.0开始,您可以使用IsNullOrEmpty

string a;
...
if (string.IsNullOrEmpty(a)) ...

答案 4 :(得分:0)

表示字符串:

string a;
if(!String.IsNullOrEmpty(a))
{
//do something with a
}

对于特定类型,您可以创建一个扩展方法 请注意,我使用HasValue而不是IsNullorEmpty,因为如果使用IsNullOrEmpty,我将发现相当不可读的99%的时间你必须使用!-operator

public static bool HasValue(this MyType value)
{
//do some testing to see if your specific type is considered filled
}

答案 5 :(得分:0)

if(string.IsNullOrEmpty(string name))
{
   ///  write ur code
}

答案 6 :(得分:0)

我发现Apache Commons.Lang StringUtils(Java)的命名更容易:isEmpty()检查null或空字符串,isBlank()检查null,空字符串或仅空白。 isNullOrEmpty可能更具描述性,但在大多数情况下,使用它是空的和null,同样的事情。