,

C# Foreach Kullanımı: Koleksiyonları Kolayca Gezinmek – Foreach Loop

Posted by

C# programlama dilinde foreach döngüsü, koleksiyonları kolayca dolaşmak için kullanılan bir döngü türüdür. Döngü, koleksiyonun tüm elemanları üzerinde otomatik olarak ilerler ve her eleman için belirtilen işlemleri gerçekleştirir. Bu, dizi, liste, sözlük gibi farklı koleksiyon türlerindeki elemanlara erişmek ve işlem yapmak için sıklıkla kullanılmaktadır. Şimdi Bu yazıda, C# programında foreach döngüsü kullanımı adım adım açıklayacak ve örneklerle konuyu pekiştireceğiz. For döngüsünü anlattığımız yazımıza buradan gidebilirsiniz. Ayrıca bakınız.

c# foreach kullanımı
Foreach Loop sözdizimi
foreach (tip değişken in koleksiyon)
{
  // işlemler
}
  • tip: Kullanılacak değişken tipi (string, int, byte gibi)
  • değişken: Foreach döngüsü içinde kullanılacak değer belirtilen alan
  • koleksiyon: Dizi, ArrayList, Generic List, Dictionary gibi aynı tipleri barındıran liste yapıları
Foreach döngüsü nasıl çalışır?
C# foreach döngüsünün çalışma şeması

Foreach loop belirttiğimiz koleksiyonun sıradaki elemanını alır ve in anahtar kelimesi ile döngü içindeki değişkene atar. Yani foreach döngüsü ilk başladığında belirtilen koleksiyonun ilk elemanını değişkene atar ve ikinci kez başa döndüğünde ikici elamanı üçüncü kez üçüncü elemanı ve koleksiyonda ki eleman bitene kadar bu durumu tekrarlar.

1: foreach Döngüsü Kullanımını Başlatın
foreach döngüsünü kullanmak için C# programında using System.Collections.Generic; ifadesini eklememiz gerekmektedir.

using System;
using System.Collections.Generic;

namespace ForeachExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // foreach döngüsü kullanımı burada gerçekleştirilecek
        }
    }
}

2: foreach Döngüsü İle Dizi Gezinme
Dizi gibi indeksli koleksiyonları dolaşmak için foreach döngüsünü kullanabiliriz.

int[] numbers = { 1, 2, 3, 4, 5 };

foreach (int number in numbers)
{
    Console.WriteLine(number);
}

3: foreach Döngüsü İle Liste Gezinme
Ayrıca Liste gibi indeksli koleksiyonları dolaşmak için de foreach döngüsünü kullanabiliriz.

List<string> names = new List<string> { "Alice", "Bob", "Carol" };

foreach (string name in names)
{
    Console.WriteLine(name);
}

4: foreach Döngüsü İle Sözlük Gezinme
Ayrıca Sözlük gibi anahtar-değer çiftlerini içeren koleksiyonları dolaşmak için de foreach döngüsünü kullanabiliriz.

Dictionary<string, int> ages = new Dictionary<string, int>
{
    { "Alice", 25 },
    { "Bob", 30 },
    { "Carol", 28 }
};

foreach (var person in ages)
{
    Console.WriteLine($"Ad: {person.Key}, Yaş: {person.Value}");
}

5: foreach Döngüsü İle Dize Gezinme
Ayrıca Dize içindeki karakterleri dolaşmak için de foreach döngüsünü kullanabiliriz.

string text = "Merhaba Dünya";

foreach (char character in text)
{
    Console.WriteLine(character);
}

C# Foreach Kullanımı – Örnek Proje

Şimdi Bir C# konsol uygulaması olarak, kullanıcıların bir alışveriş sepeti oluşturabileceği ve sepetlerindeki ürünleri listeleyebileceği basit bir alışveriş sepeti uygulaması yapalım.

using System;
using System.Collections.Generic;

namespace ShoppingApp
{
    class Program
    {
        static Dictionary<string, double> products = new Dictionary<string, double>();
        static List<string> shoppingCart = new List<string>();

        static void Main(string[] args)
        {
            InitializeProducts();

            bool exit = false;

            while (!exit)
            {
                Console.WriteLine("Alışveriş Sepeti Uygulaması");
                Console.WriteLine("1- Ürünleri Listele");
                Console.WriteLine("2- Sepete Ürün Ekle");
                Console.WriteLine("3- Sepeti Görüntüle");
                Console.WriteLine("4- Çıkış");
                Console.Write("Seçiminizi yapın (1/2/3/4): ");
                string choice = Console.ReadLine();

                switch (choice)
                {
                    case "1":
                        ListProducts();
                        break;
                    case "2":
                        AddToCart();
                        break;
                    case "3":
                        DisplayCart();
                        break;
                    case "4":
                        exit = true;
                        break;
                    default:
                        Console.WriteLine("Geçersiz seçim! Lütfen tekrar deneyin.");
                        break;
                }

                Console.WriteLine();
            }
        }

        static void InitializeProducts()
        {
            products.Add("Elma", 2.50);
            products.Add("Armut", 3.00);
            products.Add("Portakal", 2.75);
            products.Add("Kiraz", 4.50);
        }

        static void ListProducts()
        {
            Console.WriteLine("Ürünler:");
            foreach (var product in products)
            {
                Console.WriteLine($"{product.Key} - {product.Value} TL");
            }
        }

        static void AddToCart()
        {
            ListProducts();
            Console.Write("Sepete eklemek istediğiniz ürünün adını girin: ");
            string product = Console.ReadLine();

            if (products.ContainsKey(product))
            {
                shoppingCart.Add(product);
                Console.WriteLine($"{product} sepete eklendi.");
            }
            else
            {
                Console.WriteLine("Geçersiz ürün adı! Lütfen tekrar deneyin.");
            }
        }

        static void DisplayCart()
        {
            if (shoppingCart.Count == 0)
            {
                Console.WriteLine("Sepetiniz boş.");
            }
            else
            {
                Console.WriteLine("Sepetinizdeki Ürünler:");
                foreach (var item in shoppingCart)
                {
                    Console.WriteLine($"{item} - {products[item]} TL");
                }
            }
        }
    }
}

Bu örnekte, kullanıcılar uygulamayı başlattığında ürün listesini görebilirler. Ve istedikleri ürünleri sepete ekleyebilirler. Ayrıca sepetlerini görüntüleyebilirler. Ayrıca uygulama, ürünleri bir Dictionary koleksiyonunda saklayarak ve sepeti bir List koleksiyonunda saklayarak kullanıcıya basit bir alışveriş sepeti deneyimi sunar.

C# programlama dilinde foreach kullanımı, koleksiyonları kolayca dolaşmak için oldukça kullanışlı bir döngü türüdür. Şimdi Bu yazıda, C# programında foreach döngüsünü nasıl kullanacağınızı adım adım açıkladık ve örneklerle konuyu pekiştirdik. Umarım bu yazı, koleksiyonlar üzerinde veri işlemleri yapmak için foreach döngüsünü anlamanıza yardımcı olur!

İlginizi Çekebilir

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir