Break & Continue ๐ Skip¶
Mentor's Note: A
loopis a train on a track. But what if there's a problem?Breakis like the Emergency Brake (Stops the train), andContinueis like a Small Jump (Skips one station and goes to the next). ๐ก
๐ The Scenario: The Grocery Trip ๐¶
Imagine you are at a supermarket with a list of 10 items to buy.
- The Break (The "I'm Done" Brake): You have 10 items on your list, but by the 4th item, you realize you've Ran out of Money! ๐ฐ You Break (Stop) the whole trip and go directly to the exit. ๐ช
- The Continue (The "Out-of-Stock" Skip): You want to buy 10 items, but the 3rd item (Bread) is Out of Stock. ๐ซ You Continue (Skip) the bread and immediately move to the next item (Milk) on your list. ๐งบ
- The Result: You have total control over your journey through the loop. โ
๐จ Visual Logic: Stop vs Skip¶
| Statement | Role | Analogy | Visual Action |
|---|---|---|---|
break |
Exit the loop ๐ | The Emergency Brake | Entire Loop Stops! |
continue |
Skip current turn โญ๏ธ | The Small Jump | Move to the Next Item! |
graph TD
A[Loop Start ๐] --> B{Condition?}
B -- Match? --> C{Break or Continue?}
C -- Break ๐ --> D[EXIT LOOP ๐ช]
C -- Continue โญ๏ธ --> E[NEXT TURN ๐]
B -- No Match --> F[Run Code โ๏ธ]
F --> E
๐ Concept Explanation¶
1. The break Statement ๐ช¶
Immediately terminates the loop and moves to the first line of code AFTER the loop block.
2. The continue Statement โญ๏ธ¶
Stops the current "turn" (iteration) of the loop and jumps immediately back to the Condition Check to start the next turn.
๐ป Implementation: The Grocery Lab¶
// ๐ Scenario: Grocery Shopping
// ๐ Action: Using break and continue to control the trip
public class Main {
public static void main(String[] args) {
System.out.println("--- Starting Trip ---");
for (int item = 1; item <= 10; item++) {
// โญ๏ธ 1. Continue: Out of Stock at Item #3
if (item == 3) {
System.out.println("Item #3 is Out of Stock. Skipping... ๐ซ");
continue;
}
// ๐ 2. Break: Out of Money at Item #6
if (item == 6) {
System.out.println("Ran out of Money! Ending trip... ๐ฐ");
break;
}
System.out.println("Buying Item #" + item + " ๐งบ");
}
System.out.println("--- Exit Supermarket ---");
}
}
๐ Sample Dry Run (Logic)¶
| Turn | Item # | if (3?) | if (6?) | Output | Action |
|---|---|---|---|---|---|
| 1 | 1 |
No | No | "Buying #1" | Normal ๐งบ |
| 2 | 2 |
No | No | "Buying #2" | Normal ๐งบ |
| 3 | 3 |
Yes โ | - | "Skipping #3" | Skip โญ๏ธ |
| 4 | 4 |
No | No | "Buying #4" | Normal ๐งบ |
| 5 | 6 |
No | Yes โ | "Ending trip" | EXIT ๐ช |
๐ Technical Analysis: The while Loop Trap โ ๏ธ¶
Using continue in a while loop can be dangerous!
- The Problem: If you put continue BEFORE your i++ (increment), your loop will jump back to the start and stay on the same number forever!
- The Solution: Always make sure your counter updates before you skip. ๐ก๏ธ
๐ฏ Practice Lab ๐งช¶
Task: The Lucky Draw
Task: Loop from 1 to 20. Skip the number 13 (Unlucky) using continue. Stop the whole loop at 15 using break.
Goal: Master the combination of skip and stop logic. ๐ก
๐ก Interview Tip ๐¶
"Interviewers often ask: 'Does
breakexit from all nested loops?' Answer: NO. A standardbreakonly exits the innermost loop. To exit all of them, you need a Labeled Break (e.g.,break myLabel;)."
๐ก Pro Tip: "Use
continueto make your code cleaner. Instead of wrapping everything in a giant 'if', just skip the items you don't want at the top!" - Vishnu Damwala