如何编写正确的条件判断实现非A/C城市的错误提示?
问题解决:城市判断逻辑修正
数据表格
| ID | Name | City |
|---|---|---|
| 1 | AD | A |
| 2 | ASDF | B |
| 3 | ASg | C |
| 4 | hsdfg | B |
| 5 | dfh | D |
需求
当城市不等于A或C时,显示错误提示信息(注:每个姓名仅对应一个城市)。
错误代码分析
你当前的代码存在两处问题:
if(name!="A") { show message } if(name!="C") { show message }
- 变量名误用:判断的是城市属性,却使用了
name变量,应改为city; - 逻辑错误:当城市为C时,第一个
if条件city != "A"成立,会触发错误提示;当城市为A时,第二个if条件city != "C"成立,同样会触发错误提示,完全不符合“仅当城市既不是A也不是C时才提示”的需求。
正确实现方案
方案一:使用逻辑与(&&)
直接判断城市既不是A也不是C:
if(city != "A" && city != "C") { show message }
方案二:使用逻辑非加逻辑或(||)
先判断城市属于A或C的合法情况,再取反触发错误:
if(!(city == "A" || city == "C")) { show message }
两种写法都能准确实现需求:只有当城市为B、D这类非A/C的取值时,才显示错误提示。
内容的提问来源于stack exchange,提问作者Ahmed1212
相关产品推荐
相关产品推荐

