Nullableとの違いは何ですか? .HasValue または Nullable != null? 質問する

Nullableとの違いは何ですか? .HasValue または Nullable != null? 質問する

Nullable<>.HasValueセマンティクスが気に入っていたので、いつも使用していました。しかし、最近、他の人の既存のコードベースで作業していたところ、Nullable<> != null代わりに排他的に使用されていました。

どちらか一方を使用する理由があるのでしょうか、それとも単に好みの問題でしょうか?

  1. int? a;
    if (a.HasValue)
        // ...
    

  1. int? b;
    if (b != null)
        // ...
    

ベストアンサー1

コンパイラはnull比較を の呼び出しに置き換えるのでHasValue、実際の違いはありません。自分や同僚にとって読みやすい/意味がわかりやすい方を実行してください。

おすすめ記事