Это действительно зависит.Если вы используете язык, который поддерживает логические значения, вы должны использовать логическое значение, а не целое число, то есть:
if (value == false)
или
if (value == true)
С настоящими логическими типамивполне допустимо (и, как правило, лучше) просто написать:
if (!value)
или
if (value)
В большинстве современных языков действительно мало причин использовать целое число для логического значенияоперация.
При этом, если вы используете язык, который не поддерживает логические значения напрямую, лучший вариант здесь действительно зависит от того, как вы определяете true и false.Часто false
- это 0, а true
- это не что иное, как 0. В этой ситуации используйте if (i == 0)
(для ложной проверки) и if (i != 0)
для истинной проверки.
Если вы гарантированычто 0 и 1 являются единственными двумя значениями, я бы, вероятно, использовал if (i == 1)
, поскольку отрицание является более сложным и с большей вероятностью приведет к ошибкам обслуживания.