|| ,| ,&&在IF声明中

时间:2013-05-31 08:41:47

标签: c#

我想做以下IF声明,

if (checkID.Equals(Convert.ToInt32(txtCheck.Text)) 
    && drop == 319020000 
    || currentFloor[id][0].checkFlag == 1)

我想在这里查看以下内容:

我想检查整个陈述是否真实

checkID.Equals(Convert.ToInt32(txtCheck.Text)) && drop == 319020000`

或此声明:

currentFloor[id][0].checkFlag == 1

如果其中一个为真,它应该进入循环。

我在这里做错了什么?

2 个答案:

答案 0 :(得分:2)

使用括号,你有许多同一级别的运算符,优先级可能会杀死你

if ((checkID.Equals(Convert.ToInt32(txtCheck.Text)) && drop == 319020000)
    || currentFloor[id][0].checkFlag == 1)

http://msdn.microsoft.com/en-us/library/aa691323(v=vs.71).aspx

答案 1 :(得分:-1)

您必须使用其他括号,如下所示,

if ((checkID.Equals(Convert.ToInt32(txtCheck.Text)) && drop == 319020000) || currentFloor[id][0].checkFlag == 1)