You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何优化if条件语句((A && B) || (A && B && C))的写法

if条件语句优化方案

原始待优化代码

if ((A && B) || (A && B && C)) { ... }

重要提示:上述判断逻辑绝对不能直接替换为if ((A && B) || C) { ... },二者逻辑不等价,替换会引入业务逻辑错误。

等价优化结果

根据布尔逻辑的吸收律(对任意布尔值X、Y,X || (X && Y) 与 X 完全等价),把A && B看作整体X、C看作Y,可直接化简为无冗余判断的写法,逻辑和原始代码100%一致:

if (A && B) { ... }

等价性验证

可以通过所有分支场景校验一致性:

  • 场景1:A、B均为真值:无论C取真/假,原始代码第一个判断分支已经成立,整体返回真;化简后写法同样返回真,结果一致
  • 场景2:A、B至少一个为假值:原始代码第一个判断分支不成立,第二个判断分支因为A && B已经为假,整个与运算结果必然为假,整体返回假;化简后写法同样返回假,结果一致
  • 错误写法(A && B) || C的差异点:当A、B均为假、C为真时,错误写法会返回真,但原始代码此时无满足的分支,返回假,二者逻辑存在本质差异,不可替换。

内容的提问来源于stack exchange,提问作者Eric J.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 22:39:15