Bird
Raised Fist0
Kotlinprogramming~15 mins

String templates and interpolation in Kotlin - Mini Project: Build & Apply

Choose your learning style10 modes available
String templates and interpolation
📖 Scenario: You are creating a simple greeting card generator. The card will include a person's name and their favorite hobby.
🎯 Goal: Build a Kotlin program that uses string templates and interpolation to create personalized greeting messages.
📋 What You'll Learn
Create variables to hold a person's name and hobby
Create a greeting message using string templates with interpolation
Print the greeting message
💡 Why This Matters
🌍 Real World
String templates help create dynamic messages in apps, like personalized greetings or notifications.
💼 Career
Understanding string interpolation is essential for building user-friendly interfaces and readable code in Kotlin development.
Progress0 / 4 steps
1
Create variables for name and hobby
Create a variable called name and set it to the string "Alice". Create another variable called hobby and set it to the string "painting".
Kotlin
Hint

Use val to create variables and assign the exact strings.

2
Create a greeting message using string templates
Create a variable called greeting that uses string templates to combine name and hobby into the message: "Hello, Alice! I heard you like painting."
Kotlin
Hint

Use $variableName inside the string to insert variable values.

3
Add a condition to change the greeting
Create a variable called isMorning and set it to true. Then create a variable called finalGreeting that uses string templates and if expression to say "Good morning, Alice! I heard you like painting." if isMorning is true, otherwise use the greeting variable.
Kotlin
Hint

Use if expression inside variable assignment to choose the message.

4
Print the final greeting message
Write a println statement to print the finalGreeting variable.
Kotlin
Hint

Use println(finalGreeting) to display the message.

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