Ruby Operators Precedence
Operators Precedence
Here is the list of Ruby operators, by precedence (high to low) :
| Operator(s) | Operation |
|---|---|
| !, ~, + | Boolean NOT, bitwise complement, unary plus |
| ** | Exponentiation |
| - | Unary minus (define with -@) |
| *, /, % | Multiplication, division, modulo (remainder) |
| +, - | Addition (or concatenation), subtraction |
| <<, >> | Bitwise shift-left (or append), bitwise shift-right |
| & | Bitwise AND |
| |, ^ | Bitwise OR, bitwise XOR |
| >, >=, <, <= | Ordering |
| <=>, ==, ===, !=, =~, !~ | Equality, pattern matching, comparison |
| && | Boolean AND |
| || | Boolean OR |
| .., ... | Range creation and Boolean flip-flops |
| ?, : | Conditional |
| modifier-rescue | Exception-handling modifier |
| =, +=, -=, etc. | Assignment |
| defined? | Test variable definition and type |
| not | Boolean NOT (low precedence) |
| or, and | Boolean OR, Boolean AND |
| modifier-if, modifier-unless, modifier-while, modifier-until | Conditional and loop modifiers |
| { } blocks | blocks |
Previous:
Ruby Variables, Constants
Next:
Ruby Arithmetic Operators
