Diziyi tanımlamak için aşağıdaki gibi bir sintaksı kullanabilirsiniz:
// Veri tipi[] diziAdi = new Veri tipi[diziUzunlugu]; int[] sayilar = new int[5]; // 5 elemanlı bir tamsayı dizisi
Dizi Elemanlarına Erişim:
Dizi elemanlarına, indeks numarasını kullanarak erişebilirsiniz. Dizilerin indeksleri 0’dan başlar.
sayilar[0] = 10; // Dizinin ilk elemanına değer atama int deger = sayilar[2]; // Dizinin üçüncü elemanını alma
Diziyi tanımlarken değer atama:
Dizi tanımlarken aynı zamanda başlangıç değerleri de atayabilirsiniz:
int[] sayilar = { 1, 2, 3, 4, 5 };
Dizi Uzunluğu:
Dizi uzunluğuna erişmek için Length özelliğini kullanabilirsiniz:
int uzunluk = sayilar.Length;
Döngülerle Dizi Elemanlarına Erişim:
for veya foreach gibi döngülerle dizideki elemanlara kolayca erişebilirsiniz:
for (int i = 0; i < sayilar.Length; i++) { listbox.items.Add(sayilar[i]) } foreach (int sayi in sayilar) { // sayi ile çalışma }
Diziler, verileri düzenli bir şekilde depolamak ve işlemek için güçlü bir araçtır.
Örnek : Bir Butona basıldığında renkler
string[] renkler = { "Kırmızı", "Yeşil", "Mavi", "Sarı", "Turuncu" }; // ListBox'ı temizle listBoxRenkler.Items.Clear(); // Diziyi ListBox'a ekle foreach (string renk in renkler) { listBoxRenkler.Items.Add(renk); }
Butona tıklandığında, önceden tanımlı bir dizi oluşturulur ve bu dizi ListBox kontrolüne eklenir. ListBox’ı temizlemek (Items.Clear()) her seferinde yeni bir dizi eklemek için kullanışlıdır.
Örnek:
using System; using System.Windows.Forms; namespace DiziVeListBoxOrnegi { public partial class Form1 : Form { private string[] sehirler = { "İstanbul", "Ankara", "İzmir", "Bursa", "Adana" }; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // Form yüklendiğinde otomatik olarak ListBox'a dizi ekleyin DiziyiListBoxaEkle(); } private void buttonIslem_Click(object sender, EventArgs e) { // ListBox'tan seçilen öğeyi al if (listBoxDiziler.SelectedIndex != -1) { string secilenSehir = listBoxDiziler.SelectedItem.ToString(); // MessageBox ile seçilen öğeyi göster MessageBox.Show("Seçilen Şehir: " + secilenSehir, "Bilgi"); } else { MessageBox.Show("Lütfen bir şehir seçin.", "Uyarı"); } } private void DiziyiListBoxaEkle() { // Dizi elemanlarını ListBox'a ekleyin foreach (string sehir in sehirler) { listBoxDiziler.Items.Add(sehir); } } } }
Bu örnekte, form yüklendiğinde otomatik olarak bir dizi ListBox’a eklenir (DiziyiListBoxaEkle metodu). Ardından, ListBox’tan seçilen öğeyi bir butona tıklandığında alıp bir MessageBox ile gösteririz. Bu örnek, ListBox ile diziler arasında etkileşimi göstermek için kullanışlıdır.
örnek:
using System; using System.Windows.Forms; namespace DiziVeListBoxOrnegi { public partial class Form1 : Form { private int[] sayiDizisi; public Form1() { InitializeComponent(); } private void buttonDiziOlustur_Click(object sender, EventArgs e) { // TextBox'tan alınan adet bilgisini kontrol et if (int.TryParse(textBoxAdet.Text, out int adet) && adet > 0) { // Rastgele sayılar içeren bir dizi oluştur Random random = new Random(); sayiDizisi = new int[adet]; for (int i = 0; i < adet; i++) { sayiDizisi[i] = random.Next(1, 101); // 1 ile 100 arasında rastgele sayılar } // Diziyi ListBox'a ekle DiziyiListBoxaEkle(); // Dizideki sayıları topla int toplam = 0; foreach (int sayi in sayiDizisi) { toplam += sayi; } // Toplamı Label'da göster labelToplam.Text = "Toplam: " + toplam.ToString(); } else { MessageBox.Show("Lütfen geçerli bir pozitif sayı girin.", "Uyarı"); } } private void DiziyiListBoxaEkle() { // ListBox'ı temizle listBoxSayilar.Items.Clear(); // Dizi elemanlarını ListBox'a ekle foreach (int sayi in sayiDizisi) { listBoxSayilar.Items.Add(sayi); } } } }
Bu örnek, kullanıcının girdiği sayı adedince rastgele sayılar içeren bir dizi oluşturup, bu diziyi ListBox’a ekler. Daha sonra, dizideki sayıları toplayarak bir Label’da gösterir.
örnek:
using System; using System.Windows.Forms; using System.Linq; namespace DiziVeListBoxOrnegi { public partial class Form1 : Form { private int[] sayiDizisi; public Form1() { InitializeComponent(); } private void buttonDiziOlustur_Click(object sender, EventArgs e) { // 10 elemanlı bir dizi oluştur sayiDizisi = new int[] { 45, 12, 78, 34, 56, 23, 89, 67, 43, 21 }; // Diziyi sırala Array.Sort(sayiDizisi); // Diziyi ListBox'a ekle DiziyiListBoxaEkle(); // Dizideki sayıların ortalamasını al ve Label'da göster double ortalama = sayiDizisi.Average(); labelOrtalama.Text = "Ortalama: " + ortalama.ToString("F2"); } private void DiziyiListBoxaEkle() { // ListBox'ı temizle listBoxSiralananSayilar.Items.Clear(); // Dizi elemanlarını ListBox'a ekle foreach (int sayi in sayiDizisi) { listBoxSiralananSayilar.Items.Add(sayi); } } } }
Bu örnek, önceden belirlenmiş bir diziyi sıralar ve sıralı diziyi ListBox’a ekler. Ayrıca, dizideki sayıların ortalamasını hesaplar ve bir Label’da gösterir. Bu örnek, dizileri sıralama ve LINQ kütüphanesini kullanarak dizideki elemanların ortalamasını alma konularını içerir.