A for loop helps you repeat actions for each item in a list or collection. It makes working with groups of things easy and organized.
For loop over collections in Kotlin
Introduction
Syntax
Kotlin
for (item in collection) { // do something with item }
item is a temporary name for each element as you loop.
collection can be a list, set, or any group of items.
Examples
Kotlin
val fruits = listOf("apple", "banana", "cherry") for (fruit in fruits) { println(fruit) }
Kotlin
val numbers = listOf(1, 2, 3, 4) for (num in numbers) { println(num * 2) }
Kotlin
val chars = setOf('a', 'b', 'c') for (ch in chars) { println(ch.uppercaseChar()) }
Sample Program
This program goes through each animal in the list and prints a loving message.
Kotlin
fun main() { val animals = listOf("dog", "cat", "bird") for (animal in animals) { println("I love my $animal") } }
Important Notes
You can use for loops with any collection like lists, sets, or arrays.
Inside the loop, you can use the current item to do calculations, print, or change values.
Remember, the loop runs once for each item in the collection.
Summary
A for loop repeats actions for every item in a collection.
Use it to easily work with lists, sets, or arrays.
It helps avoid writing repetitive code for each item.
Practice
1. What does a
for loop do when used with a collection in Kotlin?easy
Solution
Step 1: Understand the purpose of a for loop
A for loop runs code repeatedly for each element in a collection like a list or array.Step 2: Identify what happens in the loop
Each item is accessed one by one, and the code inside the loop runs for each item.Final Answer:
It repeats a block of code for each item in the collection. -> Option DQuick Check:
For loop = repeat for each item [OK]
Hint: For loops run code once per item in a collection [OK]
Common Mistakes:
- Thinking for loop creates or removes items
- Confusing for loop with sorting or filtering
- Believing for loop runs only once
2. Which of the following is the correct syntax for a
for loop over a list named items in Kotlin?easy
Solution
Step 1: Recall Kotlin for loop syntax
Kotlin requires parentheses around the loop variable and collection: for (item in items) { ... }Step 2: Check each option
for (item in items) { println(item) } matches the correct syntax with parentheses and braces.Final Answer:
for (item in items) { println(item) } -> Option BQuick Check:
Parentheses + in keyword = correct syntax [OK]
Hint: Use parentheses and 'in' keyword in Kotlin for loops [OK]
Common Mistakes:
- Omitting parentheses around loop header
- Using colon ':' instead of 'in'
- Missing braces for loop body
3. What is the output of this Kotlin code?
val numbers = listOf(1, 2, 3)
for (num in numbers) {
print(num * 2)
}medium
Solution
Step 1: Understand the loop and list
The list contains 1, 2, 3. The loop goes through each number.Step 2: Calculate output for each iteration
Each number is multiplied by 2 and printed without spaces: 1*2=2, 2*2=4, 3*2=6, so output is "246".Final Answer:
246 -> Option AQuick Check:
Print doubles of 1,2,3 = 246 [OK]
Hint: Multiply and print each item in order [OK]
Common Mistakes:
- Assuming print adds spaces or newlines
- Confusing multiplication with addition
- Expecting a list output instead of concatenated string
4. Identify the error in this Kotlin code snippet:
val fruits = listOf("apple", "banana", "cherry")
for fruit in fruits {
println(fruit)
}medium
Solution
Step 1: Check for correct for loop syntax
Kotlin requires parentheses around the loop header: for (fruit in fruits) { ... }Step 2: Identify the missing parentheses
The code misses parentheses around 'fruit in fruits', causing a syntax error.Final Answer:
Missing parentheses around loop header -> Option AQuick Check:
Parentheses required in Kotlin for loops [OK]
Hint: Always put parentheses around for loop header [OK]
Common Mistakes:
- Omitting parentheses in for loop
- Using wrong loop variable syntax
- Assuming print statement causes error
5. Given a list of names, how would you use a Kotlin
for loop to print only names longer than 4 characters?
Choose the correct code snippet.hard
Solution
Step 1: Understand the condition to filter names
We want to print names only if their length is greater than 4 characters.Step 2: Check each option for correct syntax and logic
for (name in names) { if (name.length > 4) println(name) } correctly uses an if statement inside the loop to check length and print the name.Final Answer:
for (name in names) { if (name.length > 4) println(name) } -> Option CQuick Check:
Use if inside for to filter by length [OK]
Hint: Use if condition inside for loop to filter items [OK]
Common Mistakes:
- Comparing string directly to number
- Printing boolean instead of name
- Incorrect syntax in if or print statements
Recommended
Ready to prove it?
Pass the test and this pattern moves unknown
10 questions ~5 mineasy hard
