`f

`for`-each লুপ মধ্যে Java

6টি অনুশীলনী

`for`-each লুপ সম্পর্কে

ফর-ইচ লুপ কালেকশনের প্রতিটি এলিমেন্টের জন্য একটি কোড ব্লক রান করার একটি ব্যবস্থা দেয়। কিছু ডকুমেন্টেশন (যেমন Oracle-এর ডকুমেন্টেশন) এগুলোকে এনহ্যান্সড for লুপ বলে।

এখানে সাধারণ সিনট্যাক্স:

for(declaration: collection) {
    body;
}

declaration অংশটি কালেকশন থেকে অ্যাসাইন করা মানগুলো ধরে রাখতে ব্যবহৃত ভ্যারিয়েবলটি ডিক্লেয়ার করে।

collection হলো একটি অ্যারে বা কালেকশন, যেটি সেই মানগুলো ধরে রাখে যেগুলো লুপ ভ্যারিয়েবলে অ্যাসাইন করা হবে।

body-এর মধ্যে সেই স্টেটমেন্টগুলো থাকে যেগুলো কালেকশনের প্রতিটি মানের জন্য একবার রান করা হবে।

যেমন:

char[] vowels = {'a', 'e', 'i', 'o', 'u'};

for(char vowel: vowels) {
    System.out.println(vowel);
}

যার আউটপুট:

a
e
i
o
u

সাধারণত একটি for-each লুপ নিচের কারণগুলোর জন্য একটি for লুপের চেয়ে বেশি পছন্দনীয়:

  • একটি for-each লুপ সব মানের উপর ইটারেট করার নিশ্চয়তা দেয়।
  • একটি for-each লুপ আরও ডিক্লারেটিভ, অর্থাৎ কোডটি কী করছে সেটি জানাচ্ছে, কীভাবে করছে সেটি নয়।
  • একটি for-each লুপে ভুল হওয়ার সুযোগ কম, যেখানে for লুপে অফ-বাই-ওয়ান এরর হওয়া সহজ (< বনাম <= ব্যবহারের কথা ভাবুন)।
  • একটি for-each লুপ সব ধরনের কালেকশনে কাজ করে, যার মধ্যে সেগুলোও আছে যেগুলো এলিমেন্ট অ্যাক্সেস করতে ইনডেক্স ব্যবহার সমর্থন করে না (যেমন একটি Set)।
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি নতুন একটি উইন্ডো বা ট্যাবে খুলবে

`for`-each লুপ শিখুন