c# - 比较可为空的整数
问题描述
在很多地方通过应用程序我看到过这样的东西:
(int)f.Status == something.Status
这个Status
属性是:
public int? Status { get; set; }
我想要实现的是比较可为空int
的 s( int?
),以便它们只有在它们都具有值且值相同时才相等。特别是,如果它们都是,null
我希望它们被识别为不相等。
最好的方法是什么?
解决方案
我建议使用:
f.Status == something.Status
假设这两个属性是int
或int?
。
C# 将允许您在没有显式转换的情况下比较int
vs。int?
对于未来的读者,这个答案是在 OP 之前写的,明确表示比较null
预期null
会返回false
。
推荐阅读
- laravel - Laravel 5:获取具有不同id的关系模型
- database - 如何使用 pygrametl 将 csv 文件中的 unicode 数据导入数据库?
- javascript - 确切的参数是什么?
- java - 未使用局部变量 conn 的值
- android - onCreate() 方法是如何运行的?
- javascript - Javascript 调试输出
- mips32 - 三个 32 位整数的 MIPS32 乘法
- typescript - 在打字稿中使用对象属性作为类型
- java - Intellij 警告忘记写入二维数组
- python - SublimeText 3 上的 Python 错误 SyntaxError: invalid syntax