user6472290
user6472290

Reputation:

What is the difference between this two condition?

What is the difference between this two conditions?. I tried to use both conditions but different output.

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

And

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

Upvotes: 1

Views: 105

Answers (3)

Suraj
Suraj

Reputation: 3137

fist condition :

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

It will false the evaluated result if the result is true and if the result is false then the result will be true.

If data1 == true is true it will not check data2 condition and make all condition false. so if data1 == true then whole condition is false. Same as data1. And if data1 or data2 is false (one is false) then the code will be executed.

Second Condition

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

It will do the reverse of the first condition. First it will check that if data1 is not equal to true, so if data1 is false then the code will be executed.

Upvotes: 0

Matt
Matt

Reputation: 15186

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

This is equivalent of (see also De Morgan's laws):

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

Which is obviously different from

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

Upvotes: 1

Muhammad Danish
Muhammad Danish

Reputation: 53

!(data1 == true || data2 == true) this condition is same as data1 != true && data2 != true
Using ! operator with == gives != and using ! operator with || will give &&.
Your 2nd condition data1 != true || data2 != true will be same as your 1 st condition If you replace || with && in 2nd condition

Upvotes: 1

Related Questions