Hi, I'm at the stage in my book where it teaches me the order of evaluation with operators.
It says 1 % 2 * 3 evaluates to 3.
I cant work out how this is true?
Printable View
Hi, I'm at the stage in my book where it teaches me the order of evaluation with operators.
It says 1 % 2 * 3 evaluates to 3.
I cant work out how this is true?
What would you expect it to evaluate to?
Well you do multiply first right? So it evaluates to 1 % 6, but that cant be right?
What is the right way of evaluating this?
Recommended reading: Operators (The Java™ Tutorials > Learning the Java Language > Language Basics)
Basically, the mod operator IS a multiplicative operator (so is division), so they are the same precedence, so they are evaluated left-to-right.
So what is the remainder of 1 % 2?
1 % 2 is 1 when i tested it, so yeah it'll evaluate to 3, but how does it evaluate to that, obviously it does, but atm i'm not understanding why. 1 devided 2 is .5, so can you tell me how it evaluates to 1 please.
Thanks.
% is not divide - it's "remainder after integer division". 1 can be integer-divided by 2 exactly zero times. The remainder is 1.