কম্পিউটার টিউটোরিয়াল

C#-এ List-এ প্রতিটি এলিমেন্টে নির্দিষ্ট অ্যাকশন পারফর্ম করা: ForEach মেথড

C#-এ List<T>.ForEach(Action<T> action) মেথড লিস্টের প্রতিটি এলিমেন্টের জন্য নির্দিষ্ট অ্যাকশন (ডেলিগেট) এক্সিকিউট করে। এটি foreach লুপের বিকল্প এবং ফাংশনাল স্টাইলে কোড লেখার সুবিধা দেয়।

উদাহরণ ১: প্রতিটি এলিমেন্ট ১০ গুন করা

using System;
using System.Collections.Generic;

public class Demo {
    public static void demo(int s) {
        s = s * 10;
        Console.WriteLine(s);
    }

    public static void Main(String[] args) {
        List list = new List();
        list.Add(25);
        list.Add(50);
        list.Add(75);
        list.Add(100);
        list.Add(200);
        list.Add(250);
        list.Add(275);
        list.Add(300);

        Console.WriteLine("লিস্ট...");
        foreach (int i in list) {
            Console.WriteLine(i);
        }

        Console.WriteLine("\nআপডেটেড লিস্ট...");
        list.ForEach(demo);
    }
}

আউটপুট

লিস্ট...
25
50
75
100
200
250
275
300
আপডেটেড লিস্ট...
250
500
750
1000
2000
2500
2750
3000

উদাহরণ ২: প্রতিটি এলিমেন্ট থেকে ৫০ বিয়োগ করা

using System;
using System.Collections.Generic;

public class Demo {
    public static void demo(int s) {
        s = s - 50;
        Console.WriteLine(s);
    }

    public static void Main(String[] args) {
        List list = new List();
        list.Add(25);
        list.Add(50);
        list.Add(75);
        list.Add(100);
        list.Add(200);
        list.Add(250);
        list.Add(275);
        list.Add(300);

        Console.WriteLine("লিস্ট...");
        foreach (int i in list) {
            Console.WriteLine(i);
        }

        Console.WriteLine("\nআপডেটেড লিস্ট...");
        list.ForEach(demo);
    }
}

আউটপুট

লিস্ট...
25
50
75
100
200
250
275
300
আপডেটেড লিস্ট...
-25
0
25
50
150
200
225
250

ব্যাখ্যা: ForEach মেথড লিস্ট মডিফাই করে না (উপরের উদাহরণে `s` লোকাল কপি, তাই মূল লিস্ট অপরিবর্তিত থাকে)। লিস্ট মডিফাই করতে হলে ইনডেক্সার বা for লুপ ব্যবহার করতে হয়। ল্যাম্বডা এক্সপ্রেশন দিয়ে ইনলাইন লেখা যায়: list.ForEach(x => Console.WriteLine(x * 10))।

  1. জাভাস্ক্রিপ্টে নির্দিষ্ট এলিমেন্টে ইভেন্ট হ্যান্ডলার কীভাবে যোগ করবেন

  2. HTML-এ এলিমেন্টের উচ্চতা (height অ্যাট্রিবিউট) সেট করা

  3. HTML-এ এলিমেন্টের মান কীভাবে যোগ করবেন?

  4. পাইথনে প্রতিটি নম্বরের~Occurrence~সাবলিস্ট হিসেবে যোগ করা