Bird
Raised Fist0
Kotlinprogramming~20 mins

String templates and interpolation in Kotlin - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
String Template Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of simple string template
What is the output of this Kotlin code using string templates?
Kotlin
val name = "Anna"
val age = 25
println("My name is $name and I am $age years old.")
AMy name is Anna and I am 25 years old.
BMy name is $name and I am $age years old.
CMy name is Anna and I am age years old.
DMy name is name and I am 25 years old.
Attempts:
2 left
💡 Hint
Remember that $variable inside a string replaces with the variable's value.
❓ Predict Output
intermediate
2:00remaining
Using expressions inside string templates
What will this Kotlin code print?
Kotlin
val x = 5
val y = 3
println("Sum of $x and $y is ${x + y}")
ASum of 5 and 3 is 53
BSum of x and y is x + y
CSum of 5 and 3 is ${x + y}
DSum of 5 and 3 is 8
Attempts:
2 left
💡 Hint
Expressions inside ${} are evaluated before printing.
🔧 Debug
advanced
2:00remaining
Identify the error in string interpolation
What error does this Kotlin code produce?
Kotlin
val count = 10
println("You have $count items in your cart")
println("Next item price is $price")
ASyntax error: missing curly braces
BNo error, prints both lines correctly
CUnresolved reference: price
DType mismatch error
Attempts:
2 left
💡 Hint
Check if all variables used inside strings are declared.
❓ Predict Output
advanced
2:00remaining
Complex string interpolation with multiline string
What is the output of this Kotlin code?
Kotlin
val user = "Bob"
val score = 42
val message = """
Hello, $user!
Your score is ${score * 2}.
Good luck!
"""
println(message.trim())
A
Hello, $user!
Your score is ${score * 2}.
Good luck!
B
Hello, Bob!
Your score is 84.
Good luck!
C
Hello, Bob!
Your score is score * 2.
Good luck!
DHello, Bob! Your score is 42. Good luck!
Attempts:
2 left
💡 Hint
Multiline strings keep line breaks and expressions inside ${} are evaluated.
🧠 Conceptual
expert
2:00remaining
Understanding string template evaluation order
Consider this Kotlin code snippet: val a = 3 val b = 4 println("Result: ${a + b}") println("Result: $a + $b") What will be the output?
A
Result: 7
Result: 3 + 4
B
Result: 7
Result: 7
C
Result: 7
Result: $a + $b
D
Result: a + b
Result: 3 + 4
Attempts:
2 left
💡 Hint
Expressions inside ${} are evaluated, but $variable just inserts the variable's value.

Practice

(1/5)
1. What is the correct way to include a variable name inside a Kotlin string using string templates?
easy
A. println("Hello, +name+")
B. println("Hello, {name}!")
C. println("Hello, $name!")
D. println("Hello, %name%!")

Solution

  1. Step 1: Understand Kotlin string templates

    Kotlin uses $variable to insert variable values inside strings.
  2. Step 2: Identify correct syntax for variable insertion

    The syntax $name directly inserts the value of name into the string.
  3. Final Answer:

    println("Hello, $name!") -> Option C
  4. Quick Check:

    Use $variable for string templates [OK]
Hint: Use $variable to insert variables inside strings [OK]
Common Mistakes:
  • Using curly braces without $ like {name}
  • Concatenating with + inside strings
  • Using % signs instead of $
2. Which of the following is the correct syntax to include an expression inside a Kotlin string template?
easy
A. println("Sum is ${a + b}")
B. println("Sum is $a + $b")
C. println("Sum is $[a + b]")
D. println("Sum is $(a + b)")

Solution

  1. Step 1: Recall expression syntax in string templates

    Kotlin uses ${expression} to evaluate expressions inside strings.
  2. Step 2: Identify correct expression usage

    ${a + b} correctly calculates the sum and inserts it.
  3. Final Answer:

    println("Sum is ${a + b}") -> Option A
  4. Quick Check:

    Use ${expression} for calculations inside strings [OK]
Hint: Use ${} to insert expressions inside strings [OK]
Common Mistakes:
  • Using $a + $b prints variables separately, not sum
  • Using square brackets [] instead of curly braces
  • Using parentheses () without $
3. What will be the output of the following Kotlin code?
val price = 10
val tax = 2
println("Total: ${price + tax}")
medium
A. Total: 10 + 2
B. Total: 12
C. Total: ${price + tax}
D. Total: price + tax

Solution

  1. Step 1: Evaluate the expression inside the string template

    The expression ${price + tax} adds 10 + 2 = 12.
  2. Step 2: Print the resulting string

    The string becomes "Total: 12" and is printed.
  3. Final Answer:

    Total: 12 -> Option B
  4. Quick Check:

    Expression inside ${} is evaluated [OK]
Hint: Expressions inside ${} are calculated before printing [OK]
Common Mistakes:
  • Printing the expression literally without evaluation
  • Confusing $variable with ${expression}
  • Expecting concatenation without braces
4. Identify the error in this Kotlin code snippet:
val count = 5
println("Count is $count+1")
medium
A. It will print 'Count is 5+1' literally, not sum
B. Runtime error because of invalid string
C. Syntax error due to missing braces
D. It will print 'Count is 6' correctly

Solution

  1. Step 1: Understand how $count+1 is interpreted

    Kotlin treats $count as variable and +1 as plain text, so it prints "5+1" literally.
  2. Step 2: Correct way to calculate sum in string

    Use ${count + 1} to evaluate the sum inside the string.
  3. Final Answer:

    It will print 'Count is 5+1' literally, not sum -> Option A
  4. Quick Check:

    Use ${} for expressions, else prints text [OK]
Hint: Use ${} to calculate expressions, else prints text [OK]
Common Mistakes:
  • Assuming $count+1 calculates sum automatically
  • Missing braces for expressions
  • Confusing string concatenation with templates
5. You want to print the price with a dollar sign, for example: $20. Which Kotlin string correctly shows the dollar sign before the number stored in price?
hard
A. println("$price")
B. println("\$price")
C. println("$\$price")
D. println("\$$price")

Solution

  1. Step 1: Understand escaping dollar sign in Kotlin strings

    To print a literal dollar sign, use \$ to escape it.
  2. Step 2: Combine escaped dollar sign with variable

    "\$$price" prints a literal $ followed by the value of price.
  3. Final Answer:

    println("\$$price") -> Option D
  4. Quick Check:

    Escape $ with \$ to print it literally [OK]
Hint: Escape $ as \$ to print dollar sign literally [OK]
Common Mistakes:
  • Not escaping $ prints variable name or causes error
  • Using $\$ instead of \$$
  • Confusing escape sequences
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