| |
|
.NET TIPS
文字列がnull(Nothing)か空文字列かを簡単に判定するには?[2.0のみ、C#、VB]
デジタルアドバンテージ 一色 政彦
2006/08/04 |
 |
|
文字列(=String型のオブジェクト)がnull(C#の場合。Visual BasicではNothing)かどうかをチェックし、さらにnull(Nothing)ではない場合にはそれが空文字列(=長さが0の文字列。「""」あるいは「String.Empty」)かどうかをチェックするというコードは、非常によくあるパターンだ(以降、この一連のチェックを「Null&空文字列チェック」と表現する)。
.NET Framework 1.xではこのNull&空文字列チェックを実装するには、次のようなコードを書くことが多かっただろう。
if ((checkString != null) && (checkString.Length != 0))
{
// nullではなく、かつ空文字列でもない
}
else
{
// null、もしくは空文字列である
}
|
If (checkString IsNot Nothing) AndAlso (checkString.Length <> 0) Then
' nullではなく、かつ空文字列でもない
Else
' null、もしくは空文字列である
End If
|
|
| .NET Framework 1.xでNull&空文字列チェックを行うコード(上:C#、下:VB) |
しかし.NET Framework 2.0ではこのNull&空文字列チェックを容易に実現するための次のメソッドが追加された。
- String.IsNullOrEmptyメソッド(String)
String.IsNullOrEmptyメソッドは静的メソッドとして実装されており、パラメータで受け取った文字列がnull(Nothing)もしくは空文字列の場合に戻り値としてTrueを返し、null(Nothing)でも空文字列でもなければFalseを返すという仕様になっている。
このメソッドを使って上記のコードを書き直したのが次のコードである。
if (String.IsNullOrEmpty(checkString) == false)
{
// nullではなく、かつ空文字列でもない
}
else
{
// null、もしくは空文字列である
}
|
If String.IsNullOrEmpty(checkString) = False Then
' nullではなく、かつ空文字列でもない
Else
' null、もしくは空文字列である
End If
|
|
| .NET Framework 2.0でNull&空文字列チェックを行うコード(上:C#、下:VB) |
このようにString.IsNullOrEmptyメソッドを使うことで、Null&空文字列チェックをシンプルに記述できる。
|
|
generated by
|
|
| 更新履歴 |
【2006/8/5】本記事の一部に以下のような誤りがありました。お詫びして訂正させていただきます。
| 誤 |
String.IsNullOrEmptyメソッドは静的メソッドとして実装されており、パラメータで受け取った文字列がnull(Nothing)もしくは空文字列の場合に戻り値としてFalseを返し、null(Nothing)でも空文字列でもなければTrueを返すという仕様になっている。
|
| 正 |
String.IsNullOrEmptyメソッドは静的メソッドとして実装されており、パラメータで受け取った文字列がnull(Nothing)もしくは空文字列の場合に戻り値としてTrueを返し、null(Nothing)でも空文字列でもなければFalseを返すという仕様になっている。
|
|
|
TechTargetジャパン
キャリアアップ

**先週の人気講座ランキング**
〜 Android編 〜