Bird
Raised Fist0
Kotlinprogramming~5 mins

Operator precedence in Kotlin

Choose your learning style10 modes available
Introduction
Operator precedence tells the computer which math or logic steps to do first when there are many in one line.
When you write math calculations with many operators like +, -, *, / in one line.
When you combine logic checks like && and || in one condition.
When you want to make sure your code does steps in the right order without extra parentheses.
When you read code and want to understand how the computer will solve the expression.
When you want to avoid mistakes by knowing which operator acts first.
Syntax
Kotlin
val result = 3 + 4 * 2
val check = true || false && false
Multiplication (*) and division (/) happen before addition (+) and subtraction (-).
Logical AND (&&) happens before logical OR (||).
Examples
Multiplication happens first, so 4 * 2 = 8, then 3 + 8 = 11.
Kotlin
val result = 3 + 4 * 2
Parentheses change order: 3 + 4 = 7, then 7 * 2 = 14.
Kotlin
val result = (3 + 4) * 2
AND (&&) happens before OR (||), so false && false = false, then true || false = true.
Kotlin
val check = true || false && false
Parentheses change order: true || false = true, then true && false = false.
Kotlin
val check = (true || false) && false
Sample Program
This program shows how operator precedence changes results. Multiplication and AND happen before addition and OR unless parentheses change the order.
Kotlin
fun main() {
    val a = 5 + 3 * 2
    val b = (5 + 3) * 2
    val c = true || false && false
    val d = (true || false) && false
    println("a = $a")
    println("b = $b")
    println("c = $c")
    println("d = $d")
}
OutputSuccess
Important Notes
Use parentheses to make your code clear and avoid mistakes.
Remember that multiplication and division have higher precedence than addition and subtraction.
Logical AND (&&) is checked before logical OR (||).
Summary
Operator precedence decides which parts of an expression run first.
Multiplication and division come before addition and subtraction.
Logical AND runs before logical OR.
Parentheses can change the order to what you want.

Practice

(1/5)
1. In Kotlin, which operator has the highest precedence in the expression 3 + 4 * 2?
easy
A. Multiplication (*)
B. Addition (+)
C. Subtraction (-)
D. Division (/)

Solution

  1. Step 1: Identify operators in the expression

    The expression has addition (+) and multiplication (*).
  2. Step 2: Recall operator precedence rules

    Multiplication (*) has higher precedence than addition (+), so it runs first.
  3. Final Answer:

    Multiplication (*) -> Option A
  4. Quick Check:

    Multiplication before addition = Multiplication (*) [OK]
Hint: Multiply and divide before adding or subtracting [OK]
Common Mistakes:
  • Thinking addition runs before multiplication
  • Ignoring operator precedence
  • Assuming left to right always applies
2. Which of the following Kotlin expressions correctly uses parentheses to change the order of operations in 3 + 4 * 2 so that addition happens first?
easy
A. 3 + (4 * 2)
B. (3 + 4) * 2
C. 3 + 4 * 2
D. 3 * (4 + 2)

Solution

  1. Step 1: Understand default precedence

    Without parentheses, multiplication runs before addition.
  2. Step 2: Check which option forces addition first

    (3 + 4) * 2 uses parentheses around (3 + 4), so addition happens before multiplication.
  3. Final Answer:

    (3 + 4) * 2 -> Option B
  4. Quick Check:

    Parentheses change order = (3 + 4) * 2 [OK]
Hint: Use parentheses to force addition before multiplication [OK]
Common Mistakes:
  • Ignoring parentheses effect
  • Choosing expression without parentheses
  • Assuming left to right overrides precedence
3. What is the output of this Kotlin code?
val result = 10 - 4 + 2 * 3
println(result)
medium
A. 12
B. 18
C. 14
D. 4

Solution

  1. Step 1: Apply operator precedence

    Multiplication (*) runs first: 2 * 3 = 6.
  2. Step 2: Evaluate remaining expression left to right

    10 - 4 + 6 = 6 + 6 = 12.
  3. Final Answer:

    12 -> Option A
  4. Quick Check:

    Multiplication before addition/subtraction = 12 [OK]
Hint: Multiply before adding or subtracting [OK]
Common Mistakes:
  • Adding before multiplying
  • Calculating left to right ignoring precedence
  • Miscomputing subtraction and addition order
4. Find the error in this Kotlin expression:
val x = 5 + 3 * 2 && true

What is the problem?
medium
A. Logical AND (&&) has higher precedence than multiplication
B. Missing semicolon at the end
C. Multiplication operator is invalid here
D. Cannot mix arithmetic and boolean operators without parentheses

Solution

  1. Step 1: Identify mixed types in expression

    The expression mixes arithmetic (5 + 3 * 2) and boolean (&& true) without separation.
  2. Step 2: Understand Kotlin type rules

    You cannot combine Int and Boolean directly without explicit logic or parentheses.
  3. Final Answer:

    Cannot mix arithmetic and boolean operators without parentheses -> Option D
  4. Quick Check:

    Mixing Int and Boolean needs care [OK]
Hint: Don't mix numbers and booleans without clear separation [OK]
Common Mistakes:
  • Thinking semicolon is missing
  • Assuming && works with numbers
  • Ignoring type mismatch errors
5. Given the Kotlin expression:
val result = true || false && false || true && false

What is the value of result considering operator precedence?
hard
A. false
B. Syntax error
C. true
D. null

Solution

  1. Step 1: Recall logical operator precedence

    Logical AND (&&) has higher precedence than OR (||), so evaluate && first.
  2. Step 2: Evaluate all AND operations

    false && false = false, true && false = false.
  3. Step 3: Replace and evaluate OR operations left to right

    true || false || false = true || false = true.
  4. Final Answer:

    true -> Option C
  5. Quick Check:

    AND before OR, final result true [OK]
Hint: Evaluate && before || in logical expressions [OK]
Common Mistakes:
  • Evaluating OR before AND
  • Confusing operator precedence
  • Assuming expression returns null or error
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard