Skip to main content

Logical Operators, || or OR?


I remember reading a while back in regards to logical operators that in the case of OR , using || was better than or (or visa versa).



I just had to use this in my project when it came back to me but I can't remember which operator was recommended or if it was even true.



Which is better and why? Thank you!


Source: Tips4allCCNA FINAL EXAM

Comments

  1. There is no "better" but the more common one is ||. They have different precedence and || would work like one would expect normally.

    See also: Logical operators (the following example is taken from there):

    // The result of the expression (false || true) is assigned to $e
    // Acts like: ($e = (false || true))
    $e = false || true;

    // The constant false is assigned to $f and then true is ignored
    // Acts like: (($f = false) or true)
    $f = false or true;

    ReplyDelete
  2. They are used for different purposes and in fact have different operator precedences. The && and || operators are intended for Boolean conditions, whereas and and or are intended for control flow.

    For example, the following is a Boolean condition:

    if ($foo == $bar && $baz != $quxx) {


    This differs from control flow:

    doSomething() or die();

    ReplyDelete
  3. There is nothing bad or better, It just depends on the precedence of operators. Since '||' has higher precedence than 'or', so '||' is mostly used.

    ReplyDelete
  4. I don't think one is inherently better than another one, but I would suggest sticking with || because it is the default in most languages.

    EDIT: As others have pointed out there is indeed a difference between the two.

    ReplyDelete

Post a Comment

Popular posts from this blog

Slow Android emulator

I have a 2.67 GHz Celeron processor, 1.21 GB of RAM on a x86 Windows XP Professional machine. My understanding is that the Android emulator should start fairly quickly on such a machine, but for me it does not. I have followed all instructions in setting up the IDE, SDKs, JDKs and such and have had some success in staring the emulator quickly but is very particulary. How can I, if possible, fix this problem?