为什么要添加"||" 在2"!="之间或者对我不起作用?
当'name'是"test"或"test2"时,如果我使用2"!="我的if语句不起作用,但如果我只使用它,请告诉我原因.
if (col.Name != "test" || col.Name != "test2") { MessageBox.Show("No" + col.Name.ToString()); //This shows "No test" and "No test2" } else { MessageBox.Show("YES " + col.Name.ToString()); //does not reach here }
这没有"||".
if (col.Name != "test") { MessageBox.Show("No" + col.Name.ToString()); } else { MessageBox.Show("YES " + col.Name.ToString()); //Shows "YES test" }
谢谢大家
试试这个:
col.Name != "test" && col.Name != "test2"
想一想......"如果数字不是1,或数字不是2"将永远是真的,因为没有数字是1 和 2都使得两半都是假的.现在将其扩展为字符串.
它有效,但它不是你想要的.
col.Name != "test" || col.Name != "test2"
总是返回true,因为如果col.Name是"test",它不是 "test2",所以你有"false || true"=> true.如果col.Name是"test2",则会得到"true || false".如果是其他任何东西,它的评估结果为"true || true".
我不能确定你想要做什么,但你可能需要和&&
它们之间的一个和().