जावा में एक for
पाश निम्नलिखित संरचना है -
for (initialization statement; condition check; update)
loop body;
आप देख सकते हैं, यहाँ चार बयान कर रहे हैं -
- प्रारंभ बयान: यह बयान केवल एक बार, जब निष्पादित किया जाता है लूप पहली बार दर्ज किया गया है। यह एक वैकल्पिक कथन है, जिसका अर्थ है कि आप इस क्षेत्र को खाली रखना चुन सकते हैं। यह आमतौर पर कुछ प्रारंभिक उद्देश्य के लिए उपयोग किया जाता है।
- सशर्त जांच: यह कथन शायद सबसे महत्वपूर्ण है। यह सत्यापित करने के लिए जांच करता है कि कुछ अभिव्यक्ति का मूल्यांकन सही है या नहीं। यदि ऐसा है, तो लूप निष्पादन जारी है। आप इस क्षेत्र को खाली रखना चुन सकते हैं, जिसका मूल्यांकन
true
पर किया जाएगा।
- अद्यतन: यह कथन सूची बाएं से दाएं से निष्पादित की जाती है, आमतौर पर कुछ चर को बढ़ाने/घटाने के लिए उपयोग की जाती है।
- लूप बॉडी: लूप का शरीर, जो सशर्त चेक के सत्य मूल्य के आधार पर बार-बार निष्पादित किया जाएगा।
मूल रूप से यह निष्पादन निम्नानुसार होता है - पहला, जब पहली बार लूप दर्ज किया जाता है, तो प्रारंभिक विवरण एक बार निष्पादित किया जाता है। फिर सशर्त जांच को यह देखने के लिए निष्पादित किया जाता है कि क्या यह सही साबित हुआ है। यदि ऐसा है, तो लूप निकाय निष्पादित किया जाता है, अन्यथा लूप निष्पादन समाप्त हो जाता है। उसके बाद, अद्यतन कथन (हैं) निष्पादित किया गया है। इसके बाद, सशर्त जांच फिर से निष्पादित की जाती है, और यदि यह सत्य का मूल्यांकन करती है, तो फिर लूप बॉडी निष्पादित की जाती है, फिर अद्यतन कथन निष्पादित किया जाता है, फिर फिर सशर्त जांच .... आपको तस्वीर मिलती है।
अब आपके for(; ;)
वाक्यविन्यास के बारे में। इसमें कोई प्रारंभिक विवरण नहीं है, इसलिए कुछ भी निष्पादित नहीं किया जाएगा। यह सशर्त चेक स्टेटमेंट भी खाली है, जिसका अर्थ है कि यह सत्य का मूल्यांकन करता है। उसके बाद लूप शरीर को निष्पादित किया जाता है।अगला, चूंकि अद्यतन कथन खाली है, कुछ भी निष्पादित नहीं किया गया है। फिर सशर्त जांच फिर से की जाती है जो फिर से सत्य का मूल्यांकन करेगी और फिर यह पूरी प्रक्रिया फिर से दोहराई जाएगी।
तो आप देखते हैं, यह मूल रूप से एक अनंत लूप है जिसमें प्रारंभिक विवरण नहीं है, जिसका सशर्त चेक हमेशा सत्य का मूल्यांकन करेगा, और जिसमें कोई अपडेट कथन नहीं है। यह
while(true)
{
.....
}
जो जावा में एक और लोकप्रिय पाश निर्माण है।
जब आप इस तरह के अनंत लूप का उपयोग करते हैं, तो यह महत्वपूर्ण है कि ब्रेकिंग स्थिति पर ध्यान देना महत्वपूर्ण है क्योंकि ज्यादातर मामलों में आप लूप को अनिश्चित काल तक चलाने नहीं दे सकते हैं। इन प्रकार के लूपों को तोड़ने के लिए, आप break
कथन का उपयोग कर सकते हैं। संरचना इस प्रकार है -
if(some_condition_is_true)
break; // This will cause execution to break out of its nearest loop
या
if(some_condition_is_false)
break;
हालांकि हमें avoi सिखाया जाता है डी अनंत लूप का उपयोग करते हुए, मैं एक से अधिक अवसरों पर थोड़ी देर (सत्य) का दोषी हूं। –
मुझे लगता है कि उनके पास उनके क्षण हैं जहां वे उपयोगी हैं – user489041
कम से कम यदि आप कोड को पढ़ते हुए (सत्य) का उपयोग करते हैं तो इसे समझने की अधिक संभावना होती है ... – PeterT