C#

C# Ders9- switch case yapısı

Karşılaştırma yapacağınız ifadenin alabileceği değerler fazla ise çok fazla if else if ifadesi yazmak yerine karşılaştırmamızı swtich…case yapısını kullanarak oluşturmamız hem kodumuzun okunurluluğunu arttırır hem de daha hızlı kod yazmamızı sağlar. Switch…case kullanımı ard arda yazılacak if..else bloklarını kullanmaktan daha kolaydır.
switch yapısında break, case, switch ve goto anahtar sözcükleri kullanılır.

Switch-case yapısını kullanırken dikkat edilmesi gerekenler:

-switch kelimesi, bu ifadenin başlangıcını yapar.
-switch anahtar kelimesini yazdıktan sonra parantez içine bir değişken adı yazılmalıdır.
-switch parantezleri içinde double, decimal tipinde değişken kullanılmaz.
-Değiskenin tipi string veya nümerik olabilir.
-case kısmında sabit değerler yer almalıdır.
-her bir case ifadesinden sonra break anahtar kelimesi unutulmamalıdır.
-case etiketinden sonra istenen sayıda deyim satırı bulunabilir.
-case’den sonra { } işaretlerine gerek yoktur.
-Her zaman default bölümünü kullanmanız program yazarken hataları kolayca bulabilmenizi sağlar.
-En çok rastlanan hata break; deyiminin unutulmasıdır. Bunu unutmamız gerekmektedir.

Yazım Kuralı

switch (degisken)
{
case deger1 :
//ilgili işlemler
break;
case deger2 :
//ilgili işlemler
break;
case deger3 :
//ilgili işlemler
break;
default :
//ilgili işlemler
break;
}

Örnek: Aşağıdaki örneğimiz için iki label bir maskTextBox birde button kullanınız. Aşağıdaki tasarımı sizde uygulayınız.

maskTexBox’ın özelliğinden sadece tek bir sayı girilmesini sağlayınız.

Butonun click eventine verilen sayıya göre haftanın kaçıncı gününe denk geldiğini bulabilirsiniz. Default kısmına ise hatalı bir sayı girişi olduğu zaman sadece uyarı mesajı verdirmeyi de unutmadık.

private void button1_Click(object sender, EventArgs e)
        {
            int sayi = Convert.ToInt32(maskedTextBox1.Text);
            switch (sayi)
            {
                case 1:
                   label2.Text="Pazartesi";
                    break;
                case 2:
                   label2.Text="Salı";
                    break;
                case 3:
                    label2.Text="Çarşamba";
                    break;
                case 4:
                    label2.Text="Perşembe";
                    break;
                case 5:
                    label2.Text="Cuma";
                    break;
                case 6:
                    label2.Text="Cumartesi";
                    break;
                case 7:
                    label2.Text="Pazar";
                    break;
                default:
                    label2.Text = "Hatalı giriş yaptınız.";
                    break;
            }
        }

verilen maskTextBox kontrolümüze 1 den fazla sayı değeri girilmiyor aynı zamanda sadece sayı değerlerini girebiliyor.

hakkımdaki her şeyi bu blogda bulabilirsin. Haydi sende bir göz gezdirmeye ne dersin?

2 Yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir