- arithmetic expression - expression involving numerical values - consists of arithmetic operators and operands - arithmetic operator: designates numerical computation - division - both operands are ints - fractional part is truncated - "integer division" - one operand is real; result is real - modulo - remainder of division - can use on reals - typically only used on ints - operand - what the operator operates on - constant, variable, method call, arithmetic expression - binary operator: operates on 2 operands - unary operator: operates on 1 operand - e.g. negation "-" - subexpression: nested expression - precedence rules - determine order of evaluation - two or more operators - if operands of same type, result will have that type, too - type casting: convert one data type to another - implicit - numeric promotion - operand converted from lower to high precision - applied to operands of arithmetic expr - assignment conversion - occurs when var & val in assignment statement have mismatching types - only if var has higher precision - explicit - type cast operator - syntax: () - unary operator - precedence > binary - assignment operator - lowest precedence - evaluated right to left Quick Check: 1. a. 3 b. 9 + 1 = 10 c. 3 + 0 + -8 = -5 d. 2 * 1 * 2 = 4 2. a. int b. float c. float 3. b