फॉर-एच लूप इन Java

⚡ स्मार्ट सारांश

फॉर-एच लूप इन Java यह for लूप का एक सरलीकृत रूप है जिसका उपयोग काउंटर या इंडेक्स के बिना एरे और लिस्ट को ट्रैवर्स करने के लिए किया जाता है। यह संसाधन for-each सिंटैक्स की व्याख्या करता है, इसकी तुलना पारंपरिक for लूप से करता है, और अपेक्षित आउटपुट के साथ एक पूर्ण कार्यशील उदाहरण दिखाता है।

  • 🔁 उद्देश्य: for-each लूप सीधे किसी ऐरे या लिस्ट के प्रत्येक एलिमेंट पर इटरेट करता है, जिससे कोड कम हो जाता है।
  • 🧮 कोई काउंटर नहीं: पारंपरिक फॉर लूप के विपरीत, फॉर-ईच लूप में इंडेक्स, कंडीशन या इंक्रीमेंट की आवश्यकता नहीं होती है।
  • 🧩 सिंटेक्स: एक अस्थायी चर घोषित करें जिसका प्रकार संग्रह से मेल खाता हो, फिर उस संग्रह को घोषित करें जिस पर पुनरावृति करनी है।
  • तुलना: यह उदाहरण काउंटर-आधारित लूप और फॉर-ईच लूप से प्राप्त समान आउटपुट को दर्शाता है।
  • ⚠️ सीमा: for-each लूप कोई इंडेक्स नहीं देता है, इसलिए यह अंतर्निहित तत्वों को आसानी से संशोधित नहीं कर सकता है।

फॉर-एच लूप इन Java

Java प्रत्येक सरणी के लिए

फ़ॉर-ईच लूप, फ़ॉर लूप का ही एक अन्य रूप है जिसका उपयोग ऐरे को ट्रैवर्स करने के लिए किया जाता है। फ़ॉर-ईच लूप कोड को काफ़ी हद तक कम कर देता है, और इसमें इंडेक्स या काउंटर का उपयोग नहीं होता है।

सिंटेक्स:

for (<DataType of array/List> <Temp variable name> : <Array/List to be iterated>) {
    System.out.println();
    // Any other operation can be done with this temp variable.
}

किसी सरणी को लूप/पुनरावृत्त करें Java

आइए एक स्ट्रिंग सरणी का उपयोग करके उदाहरण लेते हैं जिसे आप बिना किसी काउंटर का उपयोग किए पुनरावृत्त करना चाहते हैं। एक स्ट्रिंग सरणी arrData पर विचार करें जिसे निम्न प्रकार से आरंभीकृत किया गया है:

String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};

हालाँकि आप आकार का पता लगाने जैसी विधियों को जानते होंगे सरणी और फिर पारंपरिक फॉर लूप (काउंटर, कंडीशन और इंक्रीमेंट) का उपयोग करके ऐरे के प्रत्येक तत्व के माध्यम से पुनरावृति करने के बजाय, हमें एक अधिक अनुकूलित दृष्टिकोण की आवश्यकता है जो किसी भी ऐसे काउंटर का उपयोग नहीं करेगा।

यह “फॉर” लूप का पारंपरिक दृष्टिकोण है:

for (int i = 0; i < arrData.length; i++) {
    System.out.println(arrData[i]);
}

आप काउंटर का उपयोग और फिर सरणी के सूचकांक के रूप में इसका उपयोग देख सकते हैं। Java "फॉर" लूप का उपयोग करने का एक तरीका प्रदान करता है जो सरणी के प्रत्येक तत्व के माध्यम से पुनरावृत्त होगा।

यह उस ऐरे का कोड है जिसे हमने पहले घोषित किया था:

for (String strTemp : arrData) {
    System.out.println(strTemp);
}

आप लूपों के बीच अंतर देख सकते हैं। कोड काफी कम हो गया है। साथ ही, लूप में इंडेक्स, या कहें काउंटर का कोई उपयोग नहीं है। यह सुनिश्चित करें कि for-each लूप में घोषित डेटा प्रकार, लूप के डेटा प्रकार से मेल खाता हो। सारणी सूची जिसे आप दोहरा रहे हैं।

प्रत्येक लूप के लिए उदाहरण

यहां पूरी कक्षा उपरोक्त व्याख्या को दर्शा रही है:

class UsingForEach {
  public static void main(String[] args) {
    String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
    //The conventional approach of using the for loop
    System.out.println("Using conventional For Loop:");
    for(int i=0; i< arrData.length; i++){
      System.out.println(arrData[i]);
    }
    System.out.println("\nUsing Foreach loop:");
    //The optimized method of using the for loop - also called the foreach loop
    for (String strTemp : arrData){
      System.out.println(strTemp);
    }
  }
}

किसी सरणी को पुनरावृत्त करें Java

अपेक्षित उत्पादन:

Using conventional For Loop:
Alpha
Beta
Gamma
Delta
Sigma

Using Foreach loop:
Alpha
Beta
Gamma
Delta
Sigma

अक्सर पूछे जाने वाले प्रश्न

जी हां। एआई सहायक इंडेक्स-आधारित लूप को ऐसे फॉर-ईच लूप में बदल सकते हैं जहां इंडेक्स की आवश्यकता नहीं होती है। फिर भी, आपको उन मामलों की समीक्षा करनी चाहिए जो स्थिति या तत्व संशोधन के लिए इंडेक्स पर निर्भर करते हैं।

जब इंडेक्स का उपयोग नहीं किया जाता है, तो AI उपकरण अक्सर पठनीयता के लिए फॉर-ईच लूप का सुझाव देते हैं, जबकि कीping अनुक्रमित लूप जहां तत्व की स्थिति या संशोधन मायने रखता है। चुनाव विशिष्ट कार्य पर निर्भर करता है।

एक पारंपरिक फॉर लूप पुनरावृति को नियंत्रित करने के लिए काउंटर और इंडेक्स का उपयोग करता है। फॉर-ईच लूप काउंटर के बिना प्रत्येक तत्व को सीधे पुनरावृति करता है, जिससे पठनीयता में सुधार होता है लेकिन तत्व तक पहुँच के लिए कोई इंडेक्स प्रदान नहीं करता है।

लूप वेरिएबल को बदलने से अंतर्निहित ऐरे एलिमेंट अपडेट नहीं होता, क्योंकि उसमें मान की एक प्रतिलिपि होती है। एलिमेंट को उसी स्थान पर बदलने के लिए, इंडेक्स के साथ एक पारंपरिक फॉर लूप का उपयोग करें।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: