C# Dersleri 63 - Tek Boyutlu Diziler


C# Tek Boyutlu Diziler (One-Dimensional Arrays)

Tek boyutlu diziler, C# dilinde en temel dizi türüdür. Aynı türden birden fazla veriyi sıralı bir şekilde saklamamıza olanak sağlar. Bu yazıda, tek boyutlu dizilerin nasıl tanımlanacağını, oluşturulacağını ve kullanılacağını açıklayacağız.

Dizi Nedir?

Dizi, aynı türdeki verileri bir arada saklamamıza olanak sağlayan bir veri yapısıdır. Dizi elemanlarına, sıfırdan başlayan indeksler yardımıyla erişilir. Örneğin, int[] numbers = {10, 20, 30}; ifadesi, üç elemanlı bir tam sayı dizisi tanımlar.

Tek Boyutlu Dizi Tanımlama ve Oluşturma

Tek boyutlu bir dizi tanımlamak için veri türü ve köşeli parantez ([]) kullanılır. Daha sonra dizi oluşturmak için new anahtar kelimesiyle boyutu belirtilir veya başlangıç değerleri atanır.

// Boş dizi oluşturma
int[] numbers = new int[5]; // 5 elemanlı bir tam sayı dizisi

// Başlangıç değerleriyle dizi oluşturma
string[] names = { "Ali", "Ayşe", "Veli" }; // 3 elemanlı bir metin dizisi

Dizi Elemanlarına Erişim

Dizinin elemanlarına indeksleri kullanarak erişebilirsiniz. İndeksler sıfırdan başlar.

int[] numbers = { 10, 20, 30, 40, 50 };

// İlk elemana erişim
Console.WriteLine(numbers[0]); // 10

// İkinci elemanın değerini değiştirme
numbers[1] = 25;
Console.WriteLine(numbers[1]); // 25

Dizilerde Döngü Kullanımı

Dizi elemanlarını döngülerle kolayca işleyebilirsiniz.

int[] numbers = { 10, 20, 30, 40, 50 };

// for döngüsü
for (int i = 0; i < numbers.Length; i++)
{
    Console.WriteLine($"Eleman {i}: {numbers[i]}");
}

// foreach döngüsü
foreach (int number in numbers)
{
    Console.WriteLine($"Dizi Elemanı: {number}");
}

Diziyle Sık Kullanılan Metotlar

C# dilinde dizilerle birlikte kullanılabilen bazı faydalı metotlar ve özellikler şunlardır:

  • Array.Length: Dizinin eleman sayısını döndürür.
  • Array.Sort(dizi): Diziyi küçükten büyüğe sıralar.
  • Array.Reverse(dizi): Diziyi tersine çevirir.
int[] numbers = { 50, 20, 40, 10, 30 };

Array.Sort(numbers); // 10, 20, 30, 40, 50
Array.Reverse(numbers); // 50, 40, 30, 20, 10

Console.WriteLine($"Dizinin eleman sayısı: {numbers.Length}");

Dizi ile Örnek Uygulama

Öğrencilerin sınav notlarını tutan bir dizi üzerinden örnek bir uygulama:

using System;

class Program
{
    static void Main(string[] args)
    {
        // Sınav notları dizisi
        int[] scores = { 85, 90, 78, 92, 88 };

        // Dizideki tüm notları yazdır
        Console.WriteLine("Sınav Notları:");
        foreach (int score in scores)
        {
            Console.WriteLine(score);
        }

        // Ortalama hesapla
        int total = 0;
        foreach (int score in scores)
        {
            total += score;
        }
        double average = (double)total / scores.Length;

        Console.WriteLine($"Notların Ortalaması: {average:F2}");
    }
}

Programın Çıktısı

Sınav Notları:
85
90
78
92
88
Notların Ortalaması: 86.60

Sonuç

Tek boyutlu diziler, aynı türden birden fazla veriyi saklamak için kullanılan temel bir veri yapısıdır. Dizilerle veriye hızlı erişim sağlayabilir ve döngülerle işlemleri kolaylaştırabilirsiniz. Sıralama, ters çevirme gibi işlemler ve matematiksel hesaplamalarla diziler üzerinde etkili bir şekilde çalışabilirsiniz.