1. लूप की तुलना करना: for
बनामwhile
एक while
लूप का उपयोग कहीं भी किया जा सकता है एक बयान या बयानों के समूह को कई बार प्रदर्शन करने की आवश्यकता होती है। लेकिन सभी संभावित परिदृश्यों में से एक हाइलाइट करने लायक है।
हम उस स्थिति के बारे में बात कर रहे हैं जब प्रोग्रामर (प्रोग्राम का निर्माता) पहले से जानता है कि लूप को कितनी बार निष्पादित किया जाना चाहिए। 1
यह आमतौर पर एक विशेष काउंटर चर घोषित करके और फिर लूप के प्रत्येक पुनरावृत्ति के साथ चर को बढ़ाकर (या घटाकर) नियंत्रित किया जाता है।
ऐसा लगता है कि सब कुछ वैसा ही काम कर रहा है जैसा उसे करना चाहिए, लेकिन यह बहुत सुविधाजनक नहीं है। लूप से पहले, हम काउंटर वेरिएबल की प्रारंभिक वैल्यू सेट करते हैं। फिर हालत में हम जांचते हैं कि क्या यह पहले से ही अंतिम मूल्य पर पहुंच गया है। लेकिन हम आमतौर पर लूप बॉडी के बिल्कुल अंत में मान बदलते हैं।
और क्या होगा अगर पाश का शरीर बड़ा है? या अगर हमारे पास कई नेस्टेड लूप हैं? सामान्य तौर पर, इन मामलों में काउंटर वेरिएबल्स के बारे में यह सारी जानकारी एक ही स्थान पर एकत्रित करना वांछनीय है। और इसीलिए हमारे पास for
जावा में लूप है। यह बहुत जटिल भी नहीं दिखता है:
for (statement 1; condition; statement 2)
{
block of statements
}
एक while
लूप में कोष्ठकों में केवल एक शर्त होती है, लेकिन एक for
लूप दो कथनों को जोड़ता है, जिन्हें अर्धविरामों द्वारा अलग किया जाता है।
वास्तविकता जितना लगता है उससे कहीं अधिक सरल है: संकलक एक for
लूप को एक साधारण लूप में while
इस तरह परिवर्तित करता है:
statement 1;
while (condition)
{
block of statements
statement 2;
}
या बेहतर अभी तक, इसे एक उदाहरण के साथ प्रदर्शित करते हैं। नीचे दो कोड स्निपेट समान हैं।
विकल्प 1 | विकल्प 2 |
---|---|
|
|
i
हमने काउंटर वेरिएबल से संबंधित सभी कोड को एक जगह इकट्ठा किया ।
लूप में for
, स्टेटमेंट 1 को केवल एक बार निष्पादित किया जाता है, लूप के शुरू होने से पहले। इसे दूसरे कोड स्निपेट में स्पष्ट रूप से देखा जा सकता है
कथन 2 को लूप के शरीर के समान ही निष्पादित किया जाता है, और हर बार लूप के पूरे शरीर को निष्पादित करने के बाद इसे निष्पादित किया जाता है
2. जहां for
लूप का प्रयोग किया जाता है
लूप for
शायद जावा में सबसे अधिक इस्तेमाल किया जाने वाला लूप है। while
इसका उपयोग हर जगह किया जाता है, प्रोग्रामर के लिए यह लूप की तुलना में अधिक स्पष्ट और सुविधाजनक है। वस्तुतः किसी भी लूप को लूप while
में बदला जा सकता है ।for
उदाहरण:
घुमाव के दौरान | पाश के लिए |
---|---|
|
|
|
|
|
|
|
|
|
|
पिछले उदाहरण पर ध्यान दें। लूप काउंटर के साथ काम करने के बयान गायब हैं। कोई काउंटर नहीं है और कोई बयान नहीं है।
एक लूप में for
, जावा आपको "काउंटर को इनिशियलाइज़ करने के लिए स्टेटमेंट" और "काउंटर को अपडेट करने के लिए स्टेटमेंट" को छोड़ देता है। यहां तक कि लूप कंडीशन को परिभाषित करने वाले एक्सप्रेशन को भी छोड़ा जा सकता है।
3. for
लूप का उपयोग करने की बारीकियां
for
लूप और break
और continue
कथनों का उपयोग करने के बारे में एक महत्वपूर्ण बिंदु ।
लूप में एक break
स्टेटमेंट लूप for
की तरह ही काम करता है while
- यह लूप को तुरंत समाप्त कर देता है। एक continue
बयान लूप बॉडी को छोड़ देता है, लेकिन नहीं statement 2
(जो लूप काउंटर को बदलता है)।
आइए एक और नज़र डालते हैं कि कैसे for
और while
लूप संबंधित हैं।
for (statement 1; condition; statement 2)
{
block of statements
}
statement 1;
while (condition)
{
block of statements
statement 2;
}
यदि किसी स्टेटमेंट को continue
for
लूप में निष्पादित किया जाता है , तो स्टेटमेंट के बाकी ब्लॉक को छोड़ दिया जाता है, लेकिन स्टेटमेंट 2 ( लूप के काउंटर वेरिएबल के साथ काम करने वाला ) अभी भी निष्पादित होता है।for
7 से विभाज्य संख्याओं को छोड़ कर अपने उदाहरण पर वापस आते हैं।
यह कोड हमेशा के लिए लूप हो जाएगा | यह कोड ठीक काम करेगा |
---|---|
|
|
लूप का उपयोग करने वाला कोड while
काम नहीं करेगा - i कभी भी 7 से अधिक नहीं होगा। लेकिन लूप वाला कोड for
ठीक काम करेगा।
4. छोरों की तुलना: जावा बनाम पास्कल
वैसे पास्कल का भी एक For
लूप होता है। सामान्य तौर पर, अनिवार्य रूप से प्रत्येक प्रोग्रामिंग भाषा में एक होता है। लेकिन पास्कल में यह अति स्पष्ट है। उदाहरण:
पास्कल | जावा |
---|---|
|
|
|
|
|
|