C# Vize + Final Ders Notları 12 – indexer Örnek

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication7
{
    /* Personel adında sınıf oluşturun.
     * string tipinde Isim, Soyisim propertyleri oluşturun.
     * sınıf indexer yardımı ile isim çağırıyorsa Isim fieldi, soyismi çağırıyorsa Soyisim fieldi, TamIsim çağırıyorsa isim ve soyismi birlikte çağıran programı yazınız.
     */
    public class Personel//personel sınıfı oluşturuldu.
    {
        public string Isim { get; set; }//string tipinde Isim property oluşturuldu
        public string Soyisim { get; set; }//string tipinde Soyisim property oluşturuldu.
        public string this[string key] //sınıf çağırılırken[] ifadesi kullanılması durumunda aşağıdaki işlemleri yap
        {
            get//okuma işleminde
            {
                switch (key)//köşeli parantez içerisne yazılan değer
                {
                    case “Isim”: //Isim olması durumunda
                        return Isim; //Isim fieldini döndür
                    case “Soyisim”://Soyisim olması durumunda
                        return Soyisim;//Soyisim fieldini döndür
                    case “TamIsim”://Tamisim olması durumunda
                        return string.Format(“{0}{1}”,Isim,Soyisim.ToUpper());//Isim ve Soyisim fieldlerini birlikte döndür
                    default:
                        return string.Empty;//eğer hiçbiriyse ekrana boş değer döndür
                }
            }
            //set blokları olmadığı için dizi ifadesi( [] ) ile atama işlemleri gereçekleştirilemez.
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            var person = new Personel() { Isim = “Recep”, Soyisim = “Kalıcı” };//personel nesnesi oluşturuldu ve fieldlerine atamalar yapıldı
            Console.WriteLine(person[“Isim”]);//nesne Isim fieldi yazılması ile switch case üzerinden geçerli drumu yapmaya başladı
            Console.WriteLine(person[“Soyisim”]);
            Console.WriteLine(person[“TamIsim”]);
            Console.ReadKey();
        }
    }
}


Java Developer

Yazıyı Paylaş

Related Articles

Yorum Yaz

© 2020 Onur Arslan. Tüm Hakları Saklıdır. · RSS Yazıları · RSS Yorumları