Numaralandırıcılar (Enumerators)

Serhat tarafından yazılmıştır. 16. Aralık 2008 23:11

Bu yazımızda kendi türlerimizi oluşturmamızı sağlamaya yarayan Enumeration ifadesini inceleyeceğiz.Numaralandırıcılar sınırlı sayıda kullanabilmemiz için değişken yaratmamıza olanak sağlar.Programlarımızda kullanma nedenlerinin en başında aynı tipten verilerimize kolaylıkla ulaşmamızı sağlar diyebiliriz.Örneğin program içerisinde haftanın 7 günü üzerinden işlem yaparak çeşitli yerlerde gün isimlerini kullanıyorsanız ve kullanırken de belli bir standartda yazıyorsanız  hepsini farklı farklı yazmak yerine enum yapısı altında tanımlarsak çağırmak istediğimiz yerde enum adından sonra .'ya basıp intellisense özelliği sayesinde istediğimiz günü seçebiliriz.Çok kolaylık sağlıyor gerçekten :)

Enumerators

Enum yapısı tanımlarken enum anahtar sözcüğü kullanılır. enum'ın varsayılan veri türü int'dir.Örneğin byte veritüründen bir enum tanımlamak isteseydik aşağıdaki işlemi yapacaktık ;

enum Bilgiler : byte

{

}

gibi olacaktı.Enum yapılarının türü char dışındaki bütün tamsayı türleri ile bildirebiliriz(int,long-ulong,uint,short,byte,sbyte).Ama artık sistemler güçlü olduğundan bellek alanlarının boyutu büyük olduğu için veritürünü belirtmemize gerek yoktur.

Örneğimize bakacak olursak enum tipinden Bolumler adında bir enum oluşturup bir firmadaki bölümleri belirtiyoruz.Daha sonra formLoad olayında belirtmiş olduğumuz enum'ları string[] dizimizin içerisine Enum sınıfının GetNames() metoduyla enum'ımız içerisindeki tüm değerleri dizimize alıp o dizinin içinide foreach ile döndükten sonra değerleri bir listBox'a aktarıcaz.btnSec isimli butona tıklandığında ise listBox'dan seçilen değeri comboBox'ımıza ekleyeceğiz.

numaralandırıcılar

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Enumeration
{
    public partial class Form1 : Form
    {
        enum Bolumler
        {
            Muhasebe,
            SatisvePazarlama,
            BilgiIslem,
            ARGE,
            MusteriHizmetleri
        }

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            string[] bolumler = Enum.GetNames(typeof(Bolumler));
            foreach (string s in bolumler)
                listBox1.Items.Add(s);
        }

        private void btnSec_Click(object sender, EventArgs e)
        {
            cmbSecilenBolumler.Items.Add(listBox1.SelectedItem.ToString());
        }
    }
}

Görüldüğü gibi hiç listbox'a tek tek items eklemekle uğraşmadık.Eğer programımızda sık kullanılan değerler varsa enum yapısı ile belirtirsek bize çok kolaylık sağlar :)

Sonraki makalede görüşmek üzere . İyi çalışmalar

Serhat TAŞ

Bu yazıyı ilk değerlendiren siz olun

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Etiketler: ,

C# & .NET

Yorum ekle


(Gravatar simgesini gösterecek)  

biuquote
  • Yorum
  • Canlı önizleme
Loading



Powered by BlogEngine.NET 1.4.5.0
Bu tema Mads Kristensen tarafından yapılmıştır ve Türkçeleştirilmesi Blog Engine Türkiye ekibi tarafından yapılmıştır.

Son Yorumlar

Comment RSS

Yasal Uyarı

Bu sitede sunulan tüm bilgi ve dökümanların kullanımından ve sitede yapılan kullanıcı yorumlarından (siyasi içerik,hakaret vb.) doğacak sorunlardan yazar sorumlu tutulamaz. 

İçeriğin kaynak belirtilmeden kopyalanması yasaktır !

SERHAT TAŞ

© Copyright 2010