C#-এ foreach লুপ একটি কালেকশন বা অ্যারে-এর প্রতিটি এলিমেন্টের মাধ্যমে ইটারেট করার জন্য ব্যবহৃত হয়। এটি IEnumerable বা IEnumerable<T> ইন্টারফেস বাস্তবায়নকারী যেকোনো টাইপের সাথে কাজ করে। এটি ইনডেক্স-ভিত্তিক অ্যাক্সেসের চেয়ে সহজ এবং কম ত্রুটিপূর্ণ।
উদাহরণ: LinkedList-এ foreach লুপ ব্যবহার
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
LinkedList linkedList = new LinkedList();
linkedList.AddLast(25);
linkedList.AddLast(50);
linkedList.AddLast(100);
linkedList.AddLast(200);
linkedList.AddLast(400);
linkedList.AddLast(500);
linkedList.AddLast(550);
linkedList.AddLast(600);
linkedList.AddLast(800);
linkedList.AddLast(1200);
Console.WriteLine("নোড সংখ্যা = " + linkedList.Count);
foreach (int val in linkedList) {
Console.WriteLine(val);
}
Console.WriteLine("লিঙ্কডলিস্টে ৮০০ আছে কি? " + linkedList.Contains(800));
}
}
আউটপুট
নোড সংখ্যা = 10 25 50 100 200 400 500 550 600 800 1200 লিঙ্কডলিস্টে ৮০০ আছে কি? True
ব্যাখ্যা: foreach লুপ প hinten থেকে কালেকশনের প্রতিটি এলিমেন্ট পড়ে এবং লুপ বডি এক্সিকিউট করে। এটি কালেকশন মডিফাই করতে দেয় না (যেমন Add/Remove), অন্যথায় InvalidOperationException থ্রো হয়। লিঙ্কডলিস্ট, লিস্ট, অ্যারে, ডিকশনারি—সব জায়গায় এটি কাজ করে।