The continue statement helps you skip the rest of the current loop step and move to the next one. It makes your loops cleaner when you want to ignore some cases.
When you want to skip processing certain items in a list but keep looping over the rest.
When checking conditions inside a loop and you want to jump to the next item if a condition is met.
When filtering data inside a loop without breaking the entire loop.
When you want to avoid nested if-else blocks by skipping unwanted cases early.
Syntax
Go
continue
The continue statement is used inside loops like for.
It immediately skips to the next iteration of the loop.
Examples
This loop prints numbers 1 to 5 but skips printing 3.
Go
for i := 1; i <= 5; i++ {
if i == 3 {
continue
}
fmt.Println(i)
}
This loop prints all letters in "hello" except the letter 'l'.
Go
for _, ch := range "hello" {
if ch == 'l' {
continue
}
fmt.Printf("%c", ch)
}
Sample Program
This program loops from 1 to 10. It skips even numbers using continue and prints only odd numbers.
Go
package main
import"fmt"
func main() {
for i := 1; i <= 10; i++ {
if i%2 == 0 {
continue// skip even numbers
}
fmt.Println(i) // print only odd numbers
}
}
OutputSuccess
Important Notes
Using continue can make your loops easier to read by avoiding deep nesting.
Be careful not to create infinite loops by skipping the part that changes the loop variable.
Summary
continue skips the rest of the current loop step and moves to the next.
It is useful to ignore certain cases inside loops without stopping the whole loop.
Use it to keep your code simple and clear when filtering or checking conditions.
Practice
(1/5)
1. What does the continue statement do inside a loop in Go?
easy
A. Skips the rest of the current loop iteration and moves to the next iteration
B. Stops the entire loop immediately
C. Exits the current function
D. Repeats the current iteration without moving forward
Solution
Step 1: Understand the role of continue in loops
The continue statement tells the loop to skip the remaining code in the current iteration.
Step 2: Identify what happens after continue
After skipping, the loop moves on to the next iteration without stopping the whole loop.
Final Answer:
Skips the rest of the current loop iteration and moves to the next iteration -> Option A
Quick Check:
continue skips current step [OK]
Hint: Remember: continue skips current step, not whole loop [OK]
Common Mistakes:
Confusing continue with break
Thinking continue exits the function
Assuming continue repeats the iteration
2. Which of the following is the correct syntax to use continue inside a for loop in Go?
easy
A. continue
B. continue {}
C. continue()
D. continue;
Solution
Step 1: Recall Go syntax for statements
In Go, continue is a keyword used alone without parentheses or semicolons.
Step 2: Identify the correct form
The correct usage is simply continue by itself inside the loop.
Final Answer:
continue -> Option A
Quick Check:
Go statements like continue have no parentheses or semicolons [OK]
Hint: Use continue alone, no parentheses or semicolon needed [OK]
Common Mistakes:
Adding semicolon after continue
Using continue as a function with parentheses
Using braces {} after continue
3. What will be the output of the following Go code?
for i := 1; i <= 5; i++ {
if i == 3 {
continue
}
fmt.Print(i, " ")
}
medium
A. 1 2 3 4 5
B. 1 2
C. 3 4 5
D. 1 2 4 5
Solution
Step 1: Analyze the loop and condition
The loop runs from 1 to 5. When i equals 3, continue skips printing 3.
Step 2: Determine printed values
Values 1, 2, 4, and 5 are printed with spaces. Number 3 is skipped.
Final Answer:
1 2 4 5 -> Option D
Quick Check:
continue skips printing 3 [OK]
Hint: Skip printing when continue hits condition [OK]
Common Mistakes:
Including 3 in output
Stopping loop instead of skipping
Printing nothing due to misunderstanding continue
4. Identify the error in this Go code snippet using continue:
for i := 0; i < 5; i++ {
if i == 2 {
continue()
}
fmt.Println(i)
}
medium
A. The loop condition is incorrect
B. fmt.Println is used incorrectly
C. Using parentheses with continue causes a syntax error
D. continue should be replaced with break
Solution
Step 1: Check the usage of continue
In Go, continue is a statement without parentheses. Using continue() causes a syntax error.
Step 2: Verify other parts
The loop condition and fmt.Println usage are correct. The error is only in the continue syntax.
Final Answer:
Using parentheses with continue causes a syntax error -> Option C
Quick Check:
continue has no parentheses in Go [OK]
Hint: Don't add parentheses after continue [OK]
Common Mistakes:
Writing continue() instead of continue
Confusing continue with break
Misreading loop condition as error
5. You want to print all numbers from 1 to 10 except multiples of 3 using a for loop and continue. Which code snippet correctly achieves this?
hard
A. for i := 1; i <= 10; i++ {
if i % 3 != 0 {
continue
}
fmt.Println(i)
}
B. for i := 1; i <= 10; i++ {
if i % 3 == 0 {
continue
}
fmt.Println(i)
}
C. for i := 1; i <= 10; i++ {
if i % 3 == 0 {
break
}
fmt.Println(i)
}
D. for i := 1; i <= 10; i++ {
if i % 3 == 0 {
fmt.Println(i)
continue
}
}
Solution
Step 1: Understand the goal
We want to skip printing numbers divisible by 3 and print all others from 1 to 10.
Step 2: Analyze each option
for i := 1; i <= 10; i++ {
if i % 3 == 0 {
continue
}
fmt.Println(i)
} skips printing multiples of 3 using continue correctly. for i := 1; i <= 10; i++ {
if i % 3 != 0 {
continue
}
fmt.Println(i)
} skips non-multiples, printing only multiples. for i := 1; i <= 10; i++ {
if i % 3 == 0 {
break
}
fmt.Println(i)
} breaks the loop early. for i := 1; i <= 10; i++ {
if i % 3 == 0 {
fmt.Println(i)
continue
}
} prints multiples and skips others incorrectly.
Final Answer:
for i := 1; i <= 10; i++ {
if i % 3 == 0 {
continue
}
fmt.Println(i)
} -> Option B
Quick Check:
continue skips multiples of 3, print others [OK]
Hint: Use if condition with continue to skip unwanted values [OK]
Common Mistakes:
Using break instead of continue
Reversing the condition logic
Printing inside the continue block
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.