这两个条件有什么区别?

时间:2016-08-26 07:27:28

标签: if-statement conditional-statements

这两个条件有什么区别?我尝试使用两种条件但输出不同。

if(!(data1 == true || data2 == true))
{
   // do something
}

if(data1 != true || data2 != true)
 {
   // do something
 }

3 个答案:

答案 0 :(得分:1)

!(data1 == true || data2 == true)此条件与data1 != true && data2 != true相同 用!运算符==给!=并使用!运算符||会给&& 您的第二个条件data1 != true || data2 != true将与您的第一个条件相同如果您替换||与&&在第二个条件

答案 1 :(得分:1)

!(data1 == true || data2 == true)

这相当于(另见De Morgan's laws):

(data1 != true && data2 != true)

这显然与

不同
(data1 != true || data2 != true)

答案 2 :(得分:0)

拳头状况:

if(!(data1 == true || data2 == true))
{
   // do something
}

如果结果为true,则结果为false,如果结果为false,则结果为true。

如果data1 == true为真,则不会检查data2条件并使所有条件都为false。所以如果data1 == true那么整个条件都是假的。与data1相同。如果data1或data2为false(一个为假),则代码将被执行。

第二个条件

if(data1 != true || data2 != true)
 {
   // do something
 }

它将与第一个条件相反。首先,它将检查data1是否不等于true,所以如果data1为false,则代码将被执行。

相关问题