This week's book giveaway is in the OCPJP forum. We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line! See this thread for details.
Evaluation order is based on the operators precedence and the associatively. In this case, the AND operator has a slightly higher precedence than the OR operator. And they both have left-right assoc. So...
if (b1 & b2 | b3) ===> if ((b1 & b2) | b3)
if (b1 | b2 & b3 & b4) ===> if (b1 | ((b2 & b3) & b4))
On the older versions of the exam, understanding these kinds of precedence rules was important. On the newer versions we've just added parentheses so that you won't have to memorize this stuff. If you encounter mock exam questions that test you on precedence, just know that that's an old style question and not too valid anymore.
p.s. That said, the short circuit operators are STILL important to understand
Spot false dilemmas now, ask me how!
(If you're not on the edge, you're taking up too much room.)
subject: complex boolean expressions without parentheses