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();
        }
    }
}


Yazılıma olan tutkusu için Trakya Üniversitesi - Bilgisayar Teknolojisi ve Bilişim Sistemleri öğrencisi, bölüm temsilcisi ve Keşan Yusuf Çapraz Uygulamalı Bilimler Yüksekokulu okul temsilcisi olarak öğrenimini 2016'da tamamladı. Junior Java Developer olarak aktif iş hayatına devam etmektedir.

Yazıyı Paylaş

Related Articles

Yorum Yaz

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