C# FOREACH DÖNGÜSÜ KULLANIMI

Rooster

only business
Legend Member
Katılım
10 Ağu 2019
Konular
727
Mesajlar
3,205
Çözümler
314
Tepkime puanı
4,990
Konum
Milano
Kod:
private void button1_Click(object sender, EventArgs e)
{
foreach(Control nesne in this.Controls)
{
if((nesne) is TextBox)
{
nesne.BackColor = Color.Red;
nesne.ForeColor = Color.White;
}
}
}
Foreach listeler ya da diziler üzerinde işlem yapmak için kullanılan döngü yapısıdır. Özellikle eleman sayısının bilinmediği durumlarda büyük kolaylık sağlamaktadır.
Aşağıdaki örnekte Foreach döngüsü kullanılarak string bir dizi oluşturulup bu dizinin elemanlarının yazdırılması işlemi yapılmıştır.

Kod:
class Program
    {
        static void Main(string[] args)
        {
            string[] isimler = {"Ahmet CANSEVER","Emirhan SOYLU","Elif SÜTÇÜ",
                                "Hakan ALTIN","Sema ÇALIŞKAN"};
            foreach(string eleman in isimler)
            {
                Console.WriteLine(eleman);
            }
            Console.ReadKey();
        }

Programı çalıştırdığımızda isimler dizisindeki elemanların ekrana yazdırıldığını görüyoruz.

040115_1505_CFOREACHDNG1.png


Örnek 2:

Foreach
döngüsü kullanılarak form üzerindeki elemanlara da erişilebilir. Örnek olarak form üzerinde bulunan textbox’lara erişerek arkaplan rengini ve yazı renkleri değiştiren programı inceleyelim.

Kod:
private void button1_Click(object sender, EventArgs e)
{
foreach(Control nesne in this.Controls)
{
if((nesne) is TextBox)
{
nesne.BackColor = Color.Red;
nesne.ForeColor = Color.White;
}
}
}

Örnek 3:

Diğer bir örneğimizde ise 20 elemanlı bir diziye 1-100 arası rasgele değer atarak bu diziyi Foreach döngüsü kullanarak yazdırma ve dizi içindeki en büyük ve en küçük değerini yazdırma işlemini gerçekleştirelim.
Kod:
static void Main(string[] args)
        {
            int[] dizi = new int[20];
            Random rnd = new Random();
            for(int i=0;i<dizi.Length;i++)
            {
                dizi[i] = rnd.Next(1,100);
            }
            int kucuk = dizi[0];
            int buyuk = dizi[0];
 
            foreach (int value in dizi)
            {
                Console.WriteLine(value);
                if (value < kucuk)
                {
                    kucuk = value;
                }
                if (value > buyuk)
                {
                    buyuk = value;
                }
            }
            Console.WriteLine("En büyük değer : {0}", buyuk);
            Console.WriteLine("En küçük değer : {0}", kucuk);
            Console.ReadKey();
        }

Ekran Çıktısı:

foreach




 

iwystic

Veteran
Katılım
27 Ağu 2019
Konular
290
Mesajlar
4,886
Çözümler
491
Tepkime puanı
10,772

Üst