4

変数の null と空白をチェックできるように堅牢なコードを作成する最良の方法は何ですか?

例えば

string a;

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

7 に答える 7

7

文字列の場合、

if (String.IsNullOrEmpty(a))
于 2010-05-25T08:59:22.403 に答える
3

拡張メソッドを定義して、これを多くのことで実行できるようにすることができます。

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

System.String指摘されているように、これは文字列のクラスの静的メソッドとしてすでに存在します。

于 2010-05-25T09:03:26.140 に答える
3

また、.NET 4.0を使用している場合は、String.IsNullOrWhiteSpaceを確認することをお勧めします。

于 2010-05-25T09:04:59.160 に答える
1

バージョン2.0から、 IsNullOrEmptyを使用できます。

string a;
...
if (string.IsNullOrEmpty(a)) ...
于 2010-05-25T09:00:21.667 に答える
0

文字列の場合:

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

特定のタイプについては、拡張メソッドを作成できます。IsNullOrEmptyを使用する場合、99%の確率で!演算子を使用する必要があるため、IsNullorEmptyの代わりにHasValueを使用していることに注意してください。

public static bool HasValue(this MyType value)
{
//do some testing to see if your specific type is considered filled
}
于 2010-05-25T09:03:22.033 に答える
0

Apache Commons.Lang StringUtils(Java)の命名ははるかに簡単です。isEmpty()はnullまたは空の文字列をチェックし、isBlank()はnull、空の文字列、または空白のみをチェックします。isNullOrEmptyの方がわかりやすいかもしれませんが、空とnullは、ほとんどの場合、同じものです。

于 2010-05-25T09:53:05.557 に答える
0
if(string.IsNullOrEmpty(string name))
{
   ///  write ur code
}
于 2010-05-25T09:08:22.227 に答える