📖 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
Step 1: Understand Kotlin string templates
Kotlin uses $variable to insert variable values inside strings.
Step 2: Identify correct syntax for variable insertion
The syntax $name directly inserts the value of name into the string.
Final Answer:
println("Hello, $name!") -> Option C
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
Step 1: Recall expression syntax in string templates
Kotlin uses ${expression} to evaluate expressions inside strings.
Step 2: Identify correct expression usage
${a + b} correctly calculates the sum and inserts it.
Final Answer:
println("Sum is ${a + b}") -> Option A
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
Step 1: Evaluate the expression inside the string template
The expression ${price + tax} adds 10 + 2 = 12.
Step 2: Print the resulting string
The string becomes "Total: 12" and is printed.
Final Answer:
Total: 12 -> Option B
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
Step 1: Understand how $count+1 is interpreted
Kotlin treats $count as variable and +1 as plain text, so it prints "5+1" literally.
Step 2: Correct way to calculate sum in string
Use ${count + 1} to evaluate the sum inside the string.
Final Answer:
It will print 'Count is 5+1' literally, not sum -> Option A
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
Step 1: Understand escaping dollar sign in Kotlin strings
To print a literal dollar sign, use \$ to escape it.
Step 2: Combine escaped dollar sign with variable
"\$$price" prints a literal $ followed by the value of price.
Final Answer:
println("\$$price") -> Option D
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 unknownstrongwhile earning +1 Grip toward your certificate.