C#.NET 5.0 C# .NET 5.0 Eğitimleri Volkan KANAT
Sabitler ve Değişkenler
Sabitler - Sabitler, içeriği sabit olan değer ya da ifadelerin saklanması amacı ile kullanılırlar. - C# dilinde sabitleri const ya da readonly ifadesi kullanarak iki şekilde tanımlamak mümkündür.
Sabitler, const - Sabit değerleri tanımlamada kullanılır. Değerleri tanımlandıkları anda verilmelidir. Örneğin; const int rakam = 7; - const ifadesi ile tanımlanmış bir sabitin değeri derleme esnasında değiştirilemez.
Uygulama - Dairenin çevresini ve alanını bulan bir program yazalım.
Uygulama static void Main(string[] args) { const double PI = 3.1428; double alan, cevre, yaricap; Console.Write(“Yarıçapı giriniz = ”); yaricap = Convert.ToInt32(Console.ReadLine()); cevre= 2 * PI * yaricap; alan = PI * (Math.Pow(yaricap, 2)); Console.WriteLine(“Dairenin çevresi(cm) = ” + cevre); Console.WriteLine(“Dairenin alanı(cm) = ” + alan); Console.ReadLine(); }
Sabitler, readonly - Sabit değerleri tanımlamada kullanılır. Tanımlandığı anda değeri verilebileceği gibi, varsayılan değer kullanarak tanımlanıp değeri daha sonra da verilebilir.
Uygulama - Yaş hesaplayan bir program yazalım.
Uygulama public static readonly int yil = DateTime.Now.Year; static void Main(string[] args) { Console.WriteLine(“Doğum yılınızı giriniz: ”); int dogum_yili = Convert.ToInt32(Console.ReadLine()); Console.WriteLine(“Yaşınız = ” + (yil – dogum_yili)); Console.ReadKey(); }
Değişkenler - Program içerisinde üretilen değerleri bellekte geçici olarak saklamak amacıyla kullanılırlar. - [Değişken tipi] [Değişken adı] = [İlk değer] Bir değişken tanımlanırken bu hal ile tanımlanır. İlk değer kullanımı zorunlu değildir. - Örneğin; string ad_soyad; string ad_soyad = “Volkan KANAT”;
Değişkenler - Aynı satırda birden fazla değişkeni tanımlamak mümkündür. Ancak aynı satırda tanımlanacak değişkenler aynı veri türünden olmalıdır. Değişken isimleri birbirinden virgülle ayrılarak yazılır. string ad, soyad; - Aynı satırda değişkenleri tanımlarken bazı değişkenlere değer aktarması yaparak, bazılarına ise değer aktarması yapmadan tanımlayabilirsiniz. int a = 5, b = 10, c;
Değişkenler - Değişkenlere değer ataması yaparken, değerler üzerinde çeşitli işlemler yapabilirsiniz. int a = 5; int b = a + 3;
Değişken Tipleri
Tanımlandıkları Yerlere Göre Değişken Tipleri - Değişkenler tanımlandıkları yerler göre global(genel) ve local(yerel) olmak üzere ikiye ayrılır. - Local değişkenler, bir metot ya da kod bloğunun içerisinde tanımlanarak, sadece tanımlandıkları metot ya da kod bloğunun içerisinde geçerli olurlar.
Tanımlandıkları Yerlere Göre Değişken Tipleri - Global olarak tanımlanan değişkenler tanımlandıkları yere göre bir kod bloğunun, metodun ya da sınıfın tamamında geçerli olur.
Uygulama - Butona basma sayımızı gösteren bir program yazalım.
Uygulama int i = 0; private void button1_Click(object sender, EventArgs e) { i=i+1; MessageBox.Show(i + “ defa tıklandı”); }
Struct (Yapı) Oluşturmak - Farklı tiplerden değişken tiplerini, özellikleri, metotları bir çatı altında toplayarak gruplandırmak amacı ile kullanılan veri türü yapısıdır. - Struct içerisindeki her eleman tek tek tanımlanmalıdır. - struct structAdı { public [değişken tipi] [değişken adı]; }
Uygulama - Bir struct oluşturup, içerisindeki elemanları bir listBox içerisinde listeleyen bir program yazalım.
Uygulama, struct public partial class Form1 : Form { public Form1() InitializeComponent(); } struct ogrenci public string ad; public string soyad; public int numara; public string sınıf; ogrenci ogrenciler = new ogrenci();
Uygulama, buton private void button1_Click(object sender, EventArgs e) { listBox1.Items.Add(ogrenciler.ad); listBox1.Items.Add(ogrenciler.soyad); listBox1.Items.Add(ogrenciler.sınıf); listBox1.Items.Add(ogrenciler.numara); }
Uygulama, form private void button1_Click(object sender, EventArgs e) { ogrenciler.ad = “Mehmet”; ogrenciler.soyad = “CANSEVER”; ogrenciler.numara = 25; ogrenciler.sınıf = “11 - A”; }
Enum Oluşturmak - Program içerisinde kullanılan sabitlerin anlamlandırılması amacı ile bu sabitlere isimler vererek bir grup altında toplayabiliriz. Bu şekilde oluşturulan gruplara enum (enumeration(numaralandırma)) denir. enum enumAdı { Sabit1, Sabit2, … Sabit n }
Enum Oluşturmak enum Gunler { Pazartesi, Salı, Çarşamba, Perşembe, Cuma, Cumartesi, Pazar }
IsDefined Metodu - enum içerisinde bir elemanın tanımlanıp tanımlanmadığını bulmak amacıyla kullanılır. - Örneğin Gunler adlı enum içerisinde Pazartesi gününün tanımlanıp tanımlanmadığına bakalım. if (Gunler.IsDefined(typeof(Gunler), “Pazartesi”)) { MessageBox.Show(“Pazartesi değeri mevcut”); } else MessageBox.Show(“Pazartesi değeri mevcut değil”);
Enum İçerisindeki Elemanlara Erişim - enum içerisindeki elemanlar, 0 sıra numarasından başlamak üzere sıralanırlar. Sıra numaraları kullanılarak enum içerisindeki elemanlara erişim sağlanabilir.
Uygulama - Gunler adında bir enum oluşturup elemanlarına sıra numaralarını kullanarak erişen bir program yazalım.
Uygulama, enum public partial class Form1 : Form { public Form1() InitializeComponent(); } public enum Gunler Pazartesi, Salı, Çarşamba, Perşembe, Cuma, Cumartesi, Pazar
Uygulama, buton private void button1_Click(object sender, EventArgs e) { byte i = Convert.ToByte(Interaction.InputBox(“Gün numarasını giriniz.”)); Gunler gunadi; gunadi = (Gunler)i; MessageBox.Show(gunadi.ToString()); }
GetNames Metodu - enum içerisindeki elemanları string formatta elde ederek bir dizi içerisinde saklamak için GetNames metodundan yararlanılır. - Örneğin uzmanlık adlı enum içerisindeki elemanları bir listBox’a aktarmak için: foreach (string uzmanlıkalanı in Enum.GetNames(typeof(uzmanlık))) { listBox1.Items.Add(uzmanlıkalanı); }
GetValues Metodu - enum içerisindeki sabitlerin sayısal değerlerini int formatta elde ederek bir dizi içerisinde saklamak için GetNames metodundan yararlanılır. - Örneğin uzmanlık adlı enum içerisindeki elemanların sayısal değerlerini bir listBox’a aktarmak için: foreach (string uzmanlıkalanı in Enum.GetValues(typeof(uzmanlık))) { listBox1.Items.Add(uzmanlıkalanı); }
GetType Metodu - Herhangi bir değişkenin tipini öğrenebilmek için GetType metodundan faydalanılır. - GetType metodunun ürettiği değer, Type türünden olduğu için herhangi bir string değişkene aktarılamaz. ToString() metodu kullanarak string türüne dönüştürüldükten sonra kullanılabilir.
Uygulama - Değişkenlerin tipini belirtmeden var türünde tanımlayarak, değer ataması yapalım. Değişkenlerin içerdikleri değerler göre otomatik olarak C# tarafından değer ataması yapılmaktadır. - GetType metodu ile bu değişkenin tipini öğrenerek ToString() metodu üretilen değeri string değere dönüştürüp, mesaj penceresi içerisinde görüntüleyeceğiz.
Uygulama private void button1_Click(object sender, EventArgs e) { var isim = “Volkan KANAT”; MessageBox.Show(isim.GetType().ToString()); var yas = 5; MessageBox.Show(yas.GetType().ToString()); var ondalık_sayi = 12.4; MessageBox.Show(ondalık_sayi.GetType().ToString()); }
Volkan KANAT Web: http://volkankanat.com/ Mailito: volkan_kanat@yahoo.com Twitter: https://twitter.com/VolkanKanatMuh Volkan KANAT
Dinlediğiniz İçin Teşekkürler