読者です 読者をやめる 読者になる 読者になる

雑記 - otherwise

最近はDQ10しかやっていないダメ技術者がちまちまと綴る雑記帳

Int32 における IsNullOrEmpty

.NET C# VB(.NET)

ネタ元は「 Int32 型は null にならないからチェック不要」で終了していますが、弁士さんが「 Nullable 型で無い限り」と書いている通り、 Nullable 型の場合は null になり得ます。
尤も、 int と int? は型変換が必要なので、 String 型ほど問題にはならないとは思いますが、一応、 String.IsNullOrEmpty に該当するものがあるのか見てみたところ、 Nullable.HasValue と云うプロパティがあるんですね。
これは String.IsNullOrEmpty の様な小細工をしなくてもいい分、使い勝手はいい感じがします。

C#

int? v = null;
if (v.HasValue) {
  Console.WriteLine(v);
} else {
  Console.WriteLine("値が設定されていません。");
}

VB

Dim v As Integer? = Nothing
If v.HasValue Then
  Console.WriteLine(v)
Else
  Console.WriteLine("値が設定されていません。")
End If