是否有更简洁的方法来检查一个对象是否为假
本文关键字:是否 检查 一个对象 方法 简洁 | 更新日期: 2023-09-27 17:49:02
是否有更简洁的方式来写这个?
if (!(obj is bool) || (bool)obj)
在PHP或JS中可以写
if (obj !== false) // note the double == to indicate a type-check
它只是有点难读,而且在c#中语法很难看。
为了绝对清楚,obj
是object
。
if (!false.Equals(obj)) { ... }
编辑:既然我不想让@BoltClock失去视力,这里有一些可能更好的东西:
if ((bool?)obj != false) { ... }
编辑2:不要尝试我把上面,因为它不会工作,如果obj
是bool?
或bool
以外的类型
是的,有。修改代码,使obj的类型为bool
而不是object
。
在代码的某个地方,您将bool转换为对象。你为什么那么做?找到该位置并保留为bool
这是c#而不是PHP或JS。c#是强类型的 -使用这个事实!
试试这个,它很容易阅读,有时代码需要易读…
if (obj.Equals(false))