ले कथनहरू कार्यान्वयन हुने क्रमलाई निर्धारण गर्दछ। Java ले शर्तहरू (, ), loops (, , ), र branching statements (, , ) प्रदान गर्दछ — साथै switch expressions जस्ता आधुनिक वर्धनहरू।
ifswitchforwhiledo-whilebreakcontinuereturnif (score >= 90) {
grade = "A";
} else if (score >= 80) {
grade = "B";
} else {
grade = "F";
}
// ternary — concise if/else for a value
String status = (age >= 18) ? "adult" : "minor";
switch (day) {
case 1: name = "Mon"; break; // ⚠️ break needed — else it FALLS THROUGH
case 2: name = "Tue"; break;
default: name = "Unknown";
}
क्लासिक switch लाई प्रत्येक case पछि break चाहिन्छ — यो बिर्सनु भएमा fall-through हुन्छ (कार्यान्वयन अगलो case मा जारी रहन्छ), जो कुख्यात bug स्रोत हो।
// arrow syntax: no fall-through, returns a value, more concise
String name = switch (day) {
case 1 -> "Mon";
case 2 -> "Tue";
case 6, 7 -> "Weekend"; // multiple labels
default -> "Unknown";
};
आधुनिक switch expression ले fall-through लाई हटाउँछ, मान फर्काउन सक्छ, र अधिक सफा छ — नयाँ कोडमा पसन्द गरिन्छ।
// for — known iteration count
for (int i = 0; i < 10; i++) { ... }
// enhanced for-each — iterate a collection/array
for (String item : items) { ... }
// while — condition checked BEFORE each iteration
while (condition) { ... }
// do-while — body runs at least ONCE (condition checked after)
do { ... } while (condition);
for (int i = 0; i < 10; i++) {
if (i == 5) break; // exit the loop entirely
if (i % 2 == 0) continue; // skip to the next iteration
}
return result; // exit the method
// labeled break — exit nested loops
outer:
for (...) {
for (...) {
if (found) break outer; // breaks BOTH loops
}
}
break ले loop बाहिर निकाल्छ, continue ले अगलो iteration मा स्किप गर्दछ, return ले method बाहिर निकाल्छ, र labeled breaks ले nested loops लाई एकै पटकमा बाहिर निकाल्न सक्छ।
Control flow कुनै पनि प्रोग्रामको तर्क र निर्णयहरू अभिव्यक्त गर्ने आधारभूत तंत्र हो — प्रत्येक गैर-तुच्छ method ले यो प्रयोग गर्दछ।
निर्माणहरू र तिनीहरूको nuances बुझ्न आवश्यक छ: switch fall-through gotcha (र अधिक सुरक्षित आधुनिक switch expression), while र do-while को बीचको अन्तर (कम्तीमा एक पटक चलाउनु), सफा collection iteration को लागि for-each, र branching statements (nested loops को लागि labeled breaks सहित)।
यहरूमा निपुण हुनु — र आधुनिक, कम त्रुटि-प्रवण रूपहरू (switch expressions, for-each) लाई प्राथमिकता दिनु — सही, पढ्नयोग्य Java तर्क लेख्न र नियन्त्रण-प्रवाह bugs बचाउन आधारभूत छ।