Altbilgi içeriğine atla
Iron Academy Logo
C# Öğrenin
C# Öğrenin

Diğer Kategoriler

C# Switch Case

Layla Porter
20m 21s

C# dilindeki switch ifadesi, geliştiricilerin bir ifadeye bağlı olarak birçok kod bloğundan birini çalıştırmasına olanak tanıyan güçlü bir kontrol akışı mekanizmasıdır. Birden fazla koşulun tek bir değişkenle kontrol edilmesi gereken durumlar için özellikle faydalıdır. Switch durumlarında operatörler, eşleşme ifadeleri üzerinde karşılaştırmalar ve mantıksal kontroller gibi çeşitli işlemler yapmak için kullanılabilir.

Layla Porter, "C# for Beginners part 4 - Operators and Switches" adlı videosunda, C# programlamada operatörler ve switch case ifadelerine odaklanarak temel kavramlara inmektedir. Bu makale, onun videosundan ilham alarak, açıklamalarını parçalara ayıracak ve switch durumlarını ve operatörleri anlamak için videosundan kod parçacıkları sunacaktır.

Operatörlere Giriş

C# dilindeki operatörler, verileri işlemek, değerleri karşılaştırmak ve koşul değerlerine ve karşılaştırmalara dayalı kararlar almak için çok önemlidir. Layla, aritmetik, karşılaştırma ve mantıksal operatörler olmak üzere farklı türdeki operatörleri açıklayarak başlıyor.

Kullanıcı Girdisi Kullanarak Console.ReadLine

Layla, Console.ReadLine() kullanarak kullanıcı girişini nasıl yakalayacağını göstererek başlar. Bu yöntem, etkileşimli C# uygulamaları için gerekli olan konsoldan bir satır giriş okur.

Console.WriteLine("Hello, please write any word:");
string word = Console.ReadLine();
Console.WriteLine("Hello, please write any word:");
string word = Console.ReadLine();

Atama Operatörü

Yukarıdaki kod parçasında, Layla, kullanıcı girdisinden elde edilen değeri word değişkenine saklamak için atama operatörünü (=) kullanır. İşte bir ayrıntı:

  • string word: word adlı bir değişkeni string türünde ilan eder.

  • word = Console.ReadLine(): Kullanıcı tarafından girilen değeri (Console.ReadLine() ile elde edilen) word değişkenine atamak için atama operatörünü (=) kullanır.

Bu bağlamda, atama operatörü, değişken word değerini kullanıcının konsolda yazdığı şeyle ayarlamak için kullanılır. Atama operatörü, programlama için temel bir unsurdur çünkü değişkenlerdeki değerleri saklamak için kullanılır. Bu sayede bu değerler, programın çalışması boyunca kullanılabilir ve manipüle edilebilir.

Aritmetik Operatörler

C# dilindeki aritmetik operatörler, toplama, çıkarma, çarpma, bölme ve modül gibi temel matematiksel işlemleri gerçekleştirir. Bu operatörler her programlama dili için basit ve gereklidir. Layla, bu işlemleri videosunda kapsamıyor çünkü bunlar gerçekte matematik problemlerinde olduğu gibi birebir aynı sonuçları veren basit matematik işlemleridir.

Karşılaştırma Operatörleri

C#'taki karşılaştırma operatörleri, değerleri karşılaştırmamıza ve bu karşılaştırmalara dayalı olarak kararlar almamıza olanak tanır. Layla, büyük (>), küçük (<), büyük veya eşit (>=), küçük veya eşit (<=), eşitlik (==) ve eşitsizlik (!=) operatörlerini tanıtır.

Koşullu Mantık İfadelerinde Karşılaştırma Operatörlerini Kullanma

Layla Porter, videosunda kullanıcının sağladığı bir kelimenin uzunluğunu belirlemekte C# dilinde koşullu mantık kullanımına dalıyor. O, 2:10'da, dizenin türü üzerinde Length özelliğini kullanarak bir dizenin uzunluğunu kontrol etmek için bir if ifadesinin temel yapısını göstermeye başlar. Bu özellik, dizedeki karakter sayısını döndürüyor.

if (word.Length < 6)
{
    Console.WriteLine("That's a short word.");
}
if (word.Length < 6)
{
    Console.WriteLine("That's a short word.");
}

İlk koşullu kontrol, kelimenin uzunluğunun altı karakterden az olup olmadığını görmek için küçük (<) operatörünü kullanır. Koşul doğruysa, program "Bu kısa bir kelime." çıktısını verir. Kodun bu kısmı, daha kısa kelimeleri etkili bir şekilde kategorize etmeye yardımcı olur.

Sonra, 4:00'da, Layla Porter daha karmaşık koşullu karar verme logicini oluşturmak için büyük veya eşit (>=) ve mantıksal VE (&&) operatörünü kullanmayı gösterir. Birleşik koşul, kelime uzunluğunun en az altı ancak on bir karakterden az olup olmadığını kontrol eder. Her iki koşul da sağlanırsa, program "Orta uzunlukta bir kelime." ifadesini çıktı olarak verir. Bu, kelime uzunluğuna dayalı olarak daha hassas kararlar verebilmek için birden fazla koşulun nasıl birleştirilebileceğini gösterir.

else if (word.Length >= 6 && word.Length < 11)
{
    Console.WriteLine("That's a medium length word.");
}
else if (word.Length >= 6 && word.Length < 11)
{
    Console.WriteLine("That's a medium length word.");
}

Son olarak, Layla saat 4:40'ta önceki koşulları karşılamayan diğer tüm durumları ele almak için else ifadesinin kullanımını açıklar. Kodun bu bölümü, on bir karakter veya daha uzun kelimeler için "That's a long word." çıktısını verir. else ifadesini kullanmak, önceki koşullar tarafından yakalanmayan herhangi bir girdinin uygun şekilde ele alınmasını sağlar.

else
{
    Console.WriteLine("That's a long word.");
}
else
{
    Console.WriteLine("That's a long word.");
}

Şimdi, Layla programı çalıştırır (5:15) ve yukarıdaki koşullu ifadeleri ve karşılaştırma operatörlerini kullanarak kategorize etmeye çalışmak için bazı kelimeler girer:

Csharp Switch Case 1 related to Koşullu Mantık İfadelerinde Karşılaştırma Operatörlerini Kullanma

Mantıksal Operatörler

Mantıksal operatörler &&, ||, ! C#'da daha karmaşık karar verme mantığı oluşturmak için birden fazla koşulu birleştirmeye olanak tanır. Layla 6:24, bu operatörlerin koşullu ifadeler oluşturmak için nasıl birlikte çalıştığını açıklar.

Videosunda, Layla Porter, kullanıcının "köpek", "kedi" ve "japon balığı" listesinden çıkıntıyı belirlemesi gerektiği bir mini-oyun tanıtır. Japon balığı su içinde yaşadığı ve memeli olmadığı için çıkıntı olarak kabul edilir. Layla (6:55), kullanıcıdan Console.ReadLine() kullanarak seçimlerini girmelerini isteyerek başlar ve ardından dizeleri karşılaştırırken büyük/küçük harf duyarlılığı sorunlarını önlemek için girdinin küçük harfe çevrildiğinden emin olmak için ToLower() yöntemini kullanır:

Console.WriteLine("Pick the odd one out - dog, cat, goldfish");
string oddOne = Console.ReadLine().ToLower();
Console.WriteLine("Pick the odd one out - dog, cat, goldfish");
string oddOne = Console.ReadLine().ToLower();

Layla 7:32'de, kullanıcının girdisini önceden tanımlanmış hayvan listesiyle karşılaştırmak için karşılaştırma operatörlerinin kullanımını açıklar.

if (oddOne != "dog" && oddOne != "cat")
{
    Console.WriteLine("You chose the odd one out!");
}
if (oddOne != "dog" && oddOne != "cat")
{
    Console.WriteLine("You chose the odd one out!");
}

Kod, girdiği "dog" ve "cat" ile eşleşmediğini kontrol etmek için eşit değildir (!=) operatörünü kullanır. Bu koşulları mantıksal VE (&&) operatörü ile birleştirerek, ifadenin tatmin olması için her iki koşulun da doğru olması gerektiğinden emin olur. Girdi ne "köpek" ne de "kedi" ise, "japon balığı" olmalı ve program "Çıkıntıyı seçtin!" şeklinde çıktı verir.

else
{
    Console.WriteLine("Better luck next time!");
}
else
{
    Console.WriteLine("Better luck next time!");
}

Kullanıcının girişi bu koşulu karşılamıyorsa, yani girdi "köpek" veya "kedi" ise, else bloğu çalışır ve program "Bir dahaki sefere daha iyi şanslar!" şeklinde çıktı verir.

Csharp Switch Case 2 related to Mantıksal Operatörler

Layla (8:30)'da mantıksal operatörlerin koşullu ifadelerde nasıl çalıştığının anlaşılmasının önemini daha fazla açıklar. VE operatörü (&&) her iki koşulun da doğru olmasını gerektirir, oysa VEYA operatörü (||) yalnızca bir koşulun doğru olmasını gerektirir. O (9:05)'te bu operatörlerin kullanımının programın davranışını nasıl değiştirebileceğini göstererek C#'ta mantıksal operatörler kullanılırken dikkat edilmesi gereken nüansları ve olası tuzakları vurgular. Bu açıklama, izleyicilerin programlarında etkili bir şekilde koşullu mantık kullanmayı anlamalarını sağlar.

C# Switch Case İfadelerine Giriş

Switch ifadeleri, C#'ta çok dallı karar verme uygulaması için alternatif bir yol sağlar, genellikle birçok if-else ifadesinden daha okunabilir ve daha etkilidir. C#'ta 'case c', switch ifadelerinde koşulları belirtmek için kullanılır, karşılaştırmanın aynı türdeki değerler üzerinde çalışmasını sağlar.

Videosunda (12:38), Layla Porter, verilen bir kelimenin uzunluk kategorisini belirlemek için if-else ifadesi kullanmaktan switch ifadesine geçer. Switch ifadesi kullanmanın kodu daha temiz ve daha verimli hale getirebileceğini açıklar.

Kod parçacığı şu şekilde görünür:

switch (word.Length)
{
    case < 6:
        Console.WriteLine("That's a short word!");
        break;
    case int length when 6 <= length && length < 11:
        Console.WriteLine("That's a medium length word!");
        break;
    default:
        Console.WriteLine("That's a long word!");
        break;
}
switch (word.Length)
{
    case < 6:
        Console.WriteLine("That's a short word!");
        break;
    case int length when 6 <= length && length < 11:
        Console.WriteLine("That's a medium length word!");
        break;
    default:
        Console.WriteLine("That's a long word!");
        break;
}

Layla, switch ifadesinin, değerlendirilen değişkenin olası bir değerini veya değer aralığını temsil eden birden fazla vakadan oluştuğunu açıklar. Bu durumda, değişken word.Length'dir.

  1. Case < 6: İlk vaka, kelimenin uzunluğunun 6'dan küçük olup olmadığını kontrol eder. Bu koşul karşılanırsa, program "Bu kısa bir kelime!" şeklinde çıktı verir ve ardından switch bloğundan çıkmak için break ifadesini kullanır. Case'te çok sayıda ifadenin bulunabileceğini unutmayın.

  2. Case int length when 6 <= length && length < 11: İkinci vaka daha karmaşıktır. C# 7.0'da tanıtılan bir desen eşleme özelliğini kullanır. Durum int length ile tanımlanır ve ardından, uzunluğun 6'dan büyük veya eşit ve 11'den küçük olması gerektiğini belirten bir when cümlesi gelir. Desenler eşleşirse, program "That's a medium length word!" çıktısını verir ve switch bloğundan çıkar.

  3. Default: Önceki vakaların hiçbiri karşılanmazsa, varsayılan vaka çalıştırılır. Bu, bir if-else yapısında else ifadesi gibi davranır. Bu durumda, program "Bu uzun bir kelime!" şeklinde çıktı verir ve switch bloğundan çıkar.

Layla (15:45), bir if ifadesine karşı switch ifadesi kullanmanın kodu daha okunabilir ve daha kolay yönetilebilir hale getirebileceğini, özellikle çok koşullu durumlarla başa çıkarken faydalı olabileceğini vurgular. Ayrıca, C# derleyicisi onları farklı şekilde optimize ettiği için switch ifadelerinin daha verimli olabileceğini ve daha hızlı çalıştıklarını belirtir.

Switch İfadeleri (Desen Eşleşmesi)

Switch ifadeleri, basit değer tabanlı kararlar için daha kısa bir sözdizimi sunan C#'ta daha yeni bir özelliktir. Layla Porter'ın videosunda 16:25 civarında, C#'ta 'switch ifadesi' veya 'desen eşleşmeli switch' adında modern bir switch ifadesi tanıtır. Bu tür bir switch ifadesi doğrudan bir değer döndürerek kodu daha özlü ve okunabilir hale getirir.

17:00 civarında, if-else ifadesini switch ifade sözdizimini kullanarak nasıl yeniden yazacağını göstererek başlar. İşlemler yapmak yerine, switch ifadesi koşullara göre bir değişkene bir değer atar. Örneğin, şu örnek:

// Example of Switch Expression
string message = word.Length switch
{
    < 6 => "That's a short word!",
    < 11 and >= 6 => "That's a medium length word!",
    _ => "That's a long length word!"
};

Console.WriteLine(message);
// Example of Switch Expression
string message = word.Length switch
{
    < 6 => "That's a short word!",
    < 11 and >= 6 => "That's a medium length word!",
    _ => "That's a long length word!"
};

Console.WriteLine(message);

Layla 17:31'de yukarıdaki kodla ilgili şunları açıklar:

  1. String message = word.Length switch: Bir string değişkeni message başlatır ve word.Length temelinde bir switch ifadesi başlatır.

  2. < 6 => "That's a short word!": Eğer word.Length 6'dan küçükse, daha az işareti < kullanarak "That's a short word!" döndürür.

  3. < 11 and >= 6 => "That's a medium length word!": Eğer word.Length 6 ile 10 arasında ise "That's a medium length word!" döndürür, and okunabilirlik için kullanılır.

  4. _ => "Bu uzun bir kelime!": Alt çizgi, önceki koşulların hiçbiri karşılanmazsa "Bu uzun bir kelime!" döndüren bir varsayılan durum olarak görev yapar.

Layla, bu sözdiziminin okunabilirliği ve verimliliği artırmak için tasarlanmış modern C# özelliklerinin bir parçası olduğunu vurgular. Switch ifadesi, birden fazla durumu özlü bir şekilde ele almak için geleneksel if-else ifadelerine tercih edilir.

19:30'da kodu çalıştırır ve çıktı, if-else ile aynı olur:

Csharp Switch Case 3 related to Switch İfadeleri (Desen Eşleşmesi)

Sonuç

Layla Porter'ın videosu, operatörler, koşullu ifadeler ve switch deyimleri gibi temel kavramları ele alarak C# programlamasında yeni başlayanlar için sağlam bir temel sağlar. Açıklamalarını ve örneklerini takip ederek, yeni başlayanlar veri manipülasyonu ve program akışını C#'ta etkili bir şekilde kontrol etme konusunda pratik bilgiler edinebilir.

Bu temel kavramları anlamak ve verilen örneklerle pratik yapmak, C#'a yeni başlayanların daha karmaşık programlama görevleri için sağlam bir temel oluşturmalarını sağlar. YouTube Kanalında daha fazla C# videosuna göz atın.

Hero Worlddot related to C# Switch Case
Hero Affiliate related to C# Switch Case

Sevdiğiniz Şeyleri Paylaşarak Daha Fazla Kazanın

.NET, C#, Java, Python veya Node.js üzerinde çalışan geliştiriciler için içerik oluşturuyor musunuz? Uzmanlığınızı ek gelire dönüştürün!

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara