我理解这是一个主观问题,所以如果需要关闭我会道歉,但我觉得它经常足以让我想知道是否一般偏好一种形式而不是另一种形式.
显然,最好的答案是"重构代码,这样你就不需要测试虚假",但有时候没有简单的方法可以这样做,而"else"分支就是继续处理.因此,当您必须具有"if not false"构造时,这是首选标准:
不是运营商
if (!value)
Run Code Online (Sandbox Code Playgroud)
或者测试是假的
if (value == false)
Run Code Online (Sandbox Code Playgroud)