Bird
Raised Fist0
Kotlinprogramming~5 mins

Logical operators (&&, ||, !) in Kotlin - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the logical AND operator (&&) do in Kotlin?
The logical AND operator (&&) returns true only if both conditions on its sides are true. If either condition is false, it returns false.
Click to reveal answer
beginner
Explain the logical OR operator (||) in Kotlin.
The logical OR operator (||) returns true if at least one of the conditions is true. It returns false only if both conditions are false.
Click to reveal answer
beginner
What is the purpose of the logical NOT operator (!) in Kotlin?
The logical NOT operator (!) reverses the value of a boolean expression. If the expression is true, ! makes it false, and vice versa.
Click to reveal answer
beginner
Given: val a = true, val b = false, what is the result of a && b?
The result is false because the AND operator requires both sides to be true, but b is false.
Click to reveal answer
intermediate
How does Kotlin evaluate the expression: !(true || false)?
First, true || false evaluates to true. Then, !true becomes false. So the whole expression is false.
Click to reveal answer
What is the result of true && false in Kotlin?
Atrue
Bfalse
Cnull
DCompilation error
Which operator returns true if at least one condition is true?
A||
B!
C==
D&&
What does the ! operator do to a boolean value?
ALeaves it unchanged
BConverts it to a number
CThrows an error
DReverses it (true to false, false to true)
What is the result of !(false && true)?
Anull
Bfalse
Ctrue
DCompilation error
Which of these expressions is true?
Atrue || false
Btrue && false
C!true
Dfalse || false
Describe how the logical AND (&&) and OR (||) operators work in Kotlin with simple examples.
Think about when you want both conditions to be true versus when one is enough.
You got /3 concepts.
    Explain the effect of the logical NOT operator (!) on a boolean expression.
    It flips the meaning of a condition.
    You got /3 concepts.

      Practice

      (1/5)
      1. Which logical operator in Kotlin means AND and returns true only if both conditions are true?
      easy
      A. ||
      B. !
      C. &&
      D. &

      Solution

      1. Step 1: Understand the meaning of && operator

        The && operator checks if both conditions are true and returns true only then.
      2. Step 2: Compare with other operators

        The || operator means OR, ! means NOT, and & is a bitwise operator, not logical AND.
      3. Final Answer:

        && -> Option C
      4. Quick Check:

        AND operator = && [OK]
      Hint: AND means both true, use && [OK]
      Common Mistakes:
      • Confusing && with ||
      • Using & instead of &&
      • Thinking ! means AND
      2. Which of the following is the correct syntax to negate a boolean variable isActive in Kotlin?
      easy
      A. !isActive
      B. not isActive
      C. isActive!
      D. ~isActive

      Solution

      1. Step 1: Recall Kotlin negation syntax

        In Kotlin, the NOT operator is written as ! before the variable.
      2. Step 2: Check each option

        !isActive uses !isActive which is correct. not isActive is invalid syntax, C places ! after variable which is wrong, D uses ~ which is bitwise NOT invalid for booleans.
      3. Final Answer:

        !isActive -> Option A
      4. Quick Check:

        Negate with ! before variable [OK]
      Hint: Put ! before variable to negate [OK]
      Common Mistakes:
      • Putting ! after variable
      • Using 'not' keyword incorrectly
      • Using bitwise ~ for negation
      3. What is the output of this Kotlin code?
      val a = true
      val b = false
      println(a && !b || b)
      medium
      A. false
      B. true
      C. Compilation error
      D. null

      Solution

      1. Step 1: Evaluate !b

        b is false, so !b is true.
      2. Step 2: Evaluate a && !b

        a is true, !b is true, so a && !b is true.
      3. Step 3: Evaluate (a && !b) || b

        True || false is true.
      4. Final Answer:

        true -> Option B
      5. Quick Check:

        True AND NOT false OR false = true [OK]
      Hint: Evaluate NOT first, then AND, then OR [OK]
      Common Mistakes:
      • Ignoring NOT precedence
      • Mixing AND and OR order
      • Assuming false output
      4. Find the error in this Kotlin code snippet:
      val x = true
      val y = false
      if x && y {
          println("Both true")
      }
      medium
      A. Missing parentheses around condition in if statement
      B. Using && instead of ||
      C. Incorrect println syntax
      D. Variables x and y not declared

      Solution

      1. Step 1: Check if statement syntax

        Kotlin requires parentheses around the condition in if statements.
      2. Step 2: Identify the error

        The code uses if x && y without parentheses, which causes a syntax error.
      3. Final Answer:

        Missing parentheses around condition in if statement -> Option A
      4. Quick Check:

        if condition needs parentheses [OK]
      Hint: Always put () around if conditions [OK]
      Common Mistakes:
      • Omitting parentheses in if
      • Confusing && with ||
      • Wrong println usage
      5. You want to check if a user is logged in and has admin rights before allowing access. Which Kotlin condition correctly uses logical operators for this?
      val loggedIn = true
      val isAdmin = false
      // Choose the correct if condition
      hard
      A. if (loggedIn || isAdmin) { println("Access granted") }
      B. if (!loggedIn || !isAdmin) { println("Access granted") }
      C. if (!loggedIn && isAdmin) { println("Access granted") }
      D. if (loggedIn && isAdmin) { println("Access granted") }

      Solution

      1. Step 1: Understand the requirement

        Access is allowed only if user is logged in AND has admin rights.
      2. Step 2: Analyze each condition

        if (loggedIn && isAdmin) { println("Access granted") } uses && to require both loggedIn and isAdmin true. if (loggedIn || isAdmin) { println("Access granted") } allows access if either is true, which is wrong. The remaining options use negations or incorrect logic, which do not meet requirement.
      3. Final Answer:

        if (loggedIn && isAdmin) { println("Access granted") } -> Option D
      4. Quick Check:

        Use AND to require both conditions true [OK]
      Hint: Use && to require both true for access [OK]
      Common Mistakes:
      • Using || instead of &&
      • Negating conditions wrongly
      • Allowing access if only one is true
      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