Nullable<>.HasValue
セマンティクスが気に入っていたので、いつも使用していました。しかし、最近、他の人の既存のコードベースで作業していたところ、Nullable<> != null
代わりに排他的に使用されていました。
どちらか一方を使用する理由があるのでしょうか、それとも単に好みの問題でしょうか?
int? a; if (a.HasValue) // ...
対
int? b; if (b != null) // ...
ベストアンサー1
コンパイラはnull
比較を の呼び出しに置き換えるのでHasValue
、実際の違いはありません。自分や同僚にとって読みやすい/意味がわかりやすい方を実行してください。