简体   繁体   中英

How to simplify if statement?

How can I simplify if statement like this

!(!a || b) ?

And why it is actually possible?

UPD:

Sorry. Not optimize, but simplify :)

Based on De Morgan's Law your condition !(!a || b) can be simplified like (a && !b)

cause negataion mark as !

!(!a) will become a

!(||) will become &&

!(b) will become !b

You can simplify it a little more by applying De Morgan's laws :

a && !b

… But I wouldn't call it "optimizing"! Really, it's such a tiny expression that you won't get any performance improvements by "optimizing" it (assuming that you're interested in performance improvements) - profile first and find the performance hotspots elsewhere. Or better yet, clarify what do you understand by "optimizing" , what's your definition for it.

UPDATE

OK, it was simplifying the expression what you intended all along. Then stick to the first paragraph of my answer.

According to the De Morgan theorem it could be (a && !b) . Not sure if it makes any difference as you haven't specified what optimization you are looking for.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM