# Evaluation of operators in expressions.

• September 23rd, 2011, 12:08 PM
TP-Oreilly
Evaluation of operators in expressions.
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?
• September 23rd, 2011, 12:36 PM
KevinWorkman
Re: Evaluation of operators in expressions.
What would you expect it to evaluate to?
• September 23rd, 2011, 12:41 PM
TP-Oreilly
Re: Evaluation of operators in expressions.
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?
• September 23rd, 2011, 01:23 PM
KevinWorkman
Re: Evaluation of operators in expressions.
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.
• September 23rd, 2011, 01:43 PM
TP-Oreilly
Re: Evaluation of operators in expressions.
So what is the remainder of 1 % 2?
• September 23rd, 2011, 02:24 PM
KevinWorkman
Re: Evaluation of operators in expressions.
Quote:

Originally Posted by TP-Oreilly
So what is the remainder of 1 % 2?

What do you think it is? What happens when you write a small program to test it out?
• September 23rd, 2011, 07:21 PM
TP-Oreilly
Re: Evaluation of operators in expressions.
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.
• September 23rd, 2011, 07:23 PM
Sean4u
Re: Evaluation of operators in expressions.
% is not divide - it's "remainder after integer division". 1 can be integer-divided by 2 exactly zero times. The remainder is 1.