Bird
Raised Fist0
Kotlinprogramming~10 mins

For loop over collections in Kotlin - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to print each number in the list.

Kotlin
val numbers = listOf(1, 2, 3, 4, 5)
for ([1] in numbers) {
    println([1])
}
Drag options to blanks, or click blank then click option'
Ai
Bitem
Cx
Dnum
Attempts:
3 left
💡 Hint
Common Mistakes
Using a variable name not declared in the loop.
Using the list name instead of a variable.
2fill in blank
medium

Complete the code to print each fruit in the list.

Kotlin
val fruits = listOf("apple", "banana", "cherry")
for ([1] in fruits) {
    println([1].uppercase())
}
Drag options to blanks, or click blank then click option'
Afruit
BfruitName
Cf
Ditem
Attempts:
3 left
💡 Hint
Common Mistakes
Using a variable name different from the one in the loop.
Trying to use the list name instead of the variable.
3fill in blank
hard

Fix the error in the loop to print each character in the string.

Kotlin
val word = "hello"
for ([1] in word) {
    println([1])
}
Drag options to blanks, or click blank then click option'
Ac
Bchar
Cletter
Dch
Attempts:
3 left
💡 Hint
Common Mistakes
Using a variable name that is too long or inconsistent.
Trying to use the string name instead of a variable.
4fill in blank
hard

Fill both blanks to create a map of word lengths for words longer than 3 letters.

Kotlin
val words = listOf("cat", "house", "tree", "a", "dog")
val lengths = words.filter { it.length [1] 3 }.associateWith { it.[2] }
println(lengths)
Drag options to blanks, or click blank then click option'
A>
Blength
Ccount
Dsize
Attempts:
3 left
💡 Hint
Common Mistakes
Using size which is not a Kotlin string property.
Using count without parentheses which is a function.
5fill in blank
hard

Fill all three blanks to create a map of uppercase words to their lengths for words starting with 'b'.

Kotlin
val words = listOf("bat", "ball", "cat", "bird")
val result = words.filter { it.startsWith([1]) }
    .associateBy([2]) { it.[3] }
println(result)
Drag options to blanks, or click blank then click option'
A"b"
Bit.uppercase()
Clength
Dit.length
Attempts:
3 left
💡 Hint
Common Mistakes
Using single quotes instead of double quotes for strings.
Using it.length which causes duplicate it. prefix.
Using count instead of length.

Practice

(1/5)
1. What does a for loop do when used with a collection in Kotlin?
easy
A. It sorts the collection automatically.
B. It creates a new collection from the existing one.
C. It removes items from the collection one by one.
D. It repeats a block of code for each item in the collection.

Solution

  1. 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.
  2. 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.
  3. Final Answer:

    It repeats a block of code for each item in the collection. -> Option D
  4. Quick 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
A. for item in items { println(item) }
B. for (item in items) { println(item) }
C. for item : items { println(item) }
D. for (item : items) println(item)

Solution

  1. Step 1: Recall Kotlin for loop syntax

    Kotlin requires parentheses around the loop variable and collection: for (item in items) { ... }
  2. Step 2: Check each option

    for (item in items) { println(item) } matches the correct syntax with parentheses and braces.
  3. Final Answer:

    for (item in items) { println(item) } -> Option B
  4. Quick 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
A. 246
B. 123
C. 6
D. Error

Solution

  1. Step 1: Understand the loop and list

    The list contains 1, 2, 3. The loop goes through each number.
  2. 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".
  3. Final Answer:

    246 -> Option A
  4. Quick 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
A. Missing parentheses around loop header
B. Using wrong collection type
C. Incorrect print statement
D. No error, code is correct

Solution

  1. Step 1: Check for correct for loop syntax

    Kotlin requires parentheses around the loop header: for (fruit in fruits) { ... }
  2. Step 2: Identify the missing parentheses

    The code misses parentheses around 'fruit in fruits', causing a syntax error.
  3. Final Answer:

    Missing parentheses around loop header -> Option A
  4. Quick 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
A. for (name in names) { println(name.length) > 4 }
B. for (name in names) println(name.length > 4)
C. for (name in names) { if (name.length > 4) println(name) }
D. for (name in names) { if (name > 4) println(name) }

Solution

  1. Step 1: Understand the condition to filter names

    We want to print names only if their length is greater than 4 characters.
  2. 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.
  3. Final Answer:

    for (name in names) { if (name.length > 4) println(name) } -> Option C
  4. Quick 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 strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard