IRONSOFTWAREHOME
GELIŞTIRICI GÜNCELLEMELERI

C# Case İfadesi (Geliştiriciler için Nasıl Çalışır)

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Jacob Mellor
Updated: 21 Nisan 2026

C#'ta switch ifadesi, birden fazla if-else bloğuna daha etkili ve anlaşılır bir alternatif sunar. Bir değişkenin birkaç farklı değer alabileceği ve bu değere bağlı olarak farklı kodlar yürütmeniz gerektiğinde faydalıdır. Switch ifadesi bir ifadeyi değerlendirir ve eşleşen değere bağlı olarak kodu yürütür, bu da karar verme sürecinde önemli bir rol oynar.

If-else yapıları basit koşullar veya kontroller için faydalı olsa da, switch case ifadeleri, özellikle tek bir değişken veya desen eşleştirme ifadesine dayanarak daha karmaşık koşul kontrolleri ile başa çıkmada öne çıkar. If ifadelerine kıyasen daha temiz ve anlaşılabilir bir sözdizimi sunarlar, bu da hem yazma hem de bakım açısından önemlidir.

Switch İfadesinin Temelleri

Switch İfadesi Nedir?

C#'ta switch ifadesi, yürütülecek birçok kod yolundan birini seçmek için kullanılan bir kontrol yapısıdır. Seçim bir değer veya ifade temelinde yapılır. Özellikle bir değişkenin birkaç farklı değeri olabileceği durumlarda birden fazla if-else koşulu kullanmaya etkin bir alternatiftir.

Sözdizimi

Switch ifadesinin temel sözdizimi basittir:

// Switch statement
switch (variable)
{
    case value1:
        // Code to execute if variable equals value1
        break;
    case value2:
        // Code to execute if variable equals value2
        break;
    // More cases as needed
    default:
        // Code to execute if variable doesn't match any case
        break;
}
  • switch (variable): Bu, değerlendirilecek değişkeni veya ifadeyi belirtir.
  • case value1: Bunlar, değişkeni kontrol ettiğiniz farklı değerler veya koşullardır.
  • break: Eşleşen bir durum çalıştırıldığında switch bloğundan çıkmak için bu anahtar kelime kullanılır.
  • default ifadesi: Belirtilen durumların hiçbiri değişkenle eşleşmezse bu blok çalıştırılır.

Break İfadesini Anlamak

Switch ifadesindeki break ifadesi önemlidir. Eşleşen koşul zaten karşılandığında bile yürütmenin sonrasındaki duruma geçtiği 'düşme' davranışını önler. Her işlem bloğu genellikle sadece eşleşen durumun altındaki kodun yürütüldüğünden emin olmak için bir break ifadesi ile sona erer.

Switch İfadesi ve If-Else İfadelerinin Karşılaştırılması

If-else ifadesinin yapısı bir koşulu kontrol etmeyi ve koşul doğruysa bir kod bloğunu yürütmeyi içerirken, switch ifadeleri bir değişken veya ifadeyi birden fazla potansiyel değer ile karşılaştırır. Bu, çok sayıda koşul veya desen modeli kontrol etmeniz gerektiğinde switch ifadesini daha özlü ve okunabilir hale getirir.

Örnek: Bir Switch İfadesi Kullanma

int number = 3;
switch (number)
{
    case 1:
        Console.WriteLine("One");
        break;
    case 2:
        Console.WriteLine("Two");
        break;
    case 3:
        Console.WriteLine("Three");
        break;
    default:
        Console.WriteLine("Other Number"); // Print to console
        break;
}

Bu örnekte, program çıktı olarak 'Üç' yazdıracak çünkü sayı 3 ile eşleşiyor.

Varsayılan Durumun Rolü

Bir Switch Bloğundaki Varsayılanı Anlamak

Switch ifadesinde, varsayılan durum önemli bir rol oynar. Belirtilen durum etiketlerinden hiçbiri switch ifadesinin değeriyle eşleşmediğinde yürütülen bir yakalama seçeneği olarak hizmet eder. İsteğe bağlı olmakla birlikte, beklenmedik veya bilinmeyen değerleri ele almak için varsayılan bir durumu dahil etmek iyi bir uygulamadır.

Varsayılan İfadesini Nasıl ve Ne Zaman Kullanmalıyız

Belirli durumların hiçbiriyle eşleşmezse bir kod bloğunun yürütülmesini istediğinizde varsayılan durum kullanılır. Girdi ne olursa olsun, switch ifadesinin her zaman tanımlı bir davranışa sahip olmasını sağlar. Varsayılan durum, ardından iki nokta üst üste gelen default anahtar kelimesi kullanılarak belirtilir.

default:
    // Code to execute if no case matches
    break;

Varsayılan durum, switch bloğu içinde herhangi bir yerde yerleştirilebilir, ancak genellikle okunabilirlik için sona yerleştirilir.

Örnek: Varsayılan Durumlu Switch İfadesi

Haftanın bir gününü değerlendirdiğiniz bir senaryoyu düşünün:

int day = 5;
string dayName;
switch (day)
{
    case 1:
        dayName = "Monday";
        break;
    case 2:
        dayName = "Tuesday";
        break;
    case 3:
        dayName = "Wednesday";
        break;
    case 4:
        dayName = "Thursday";
        break;
    case 5:
        dayName = "Friday";
        break;
    case 6:
        dayName = "Saturday";
        break;
    case 7:
        dayName = "Sunday";
        break;
    default:
        dayName = "Invalid day";
        break;
}
Console.WriteLine(dayName);

Bu örnekte, eğer day değeri 1'den 7'ye başka bir değere sahipse, varsayılan durum çalıştırılır ve dayName 'Geçersiz gün' olarak ayarlanır.

Varsayılan Durum için En İyi Uygulamalar

  • Her Zaman Varsayılanı Ekleyin: Tüm olası durumları kapsadığınıza inanıyor olsanız bile, öngörülmemiş değerleri ele almak için varsayılan bir durumu ekleyin.
  • Anlamlı Eylemler: Varsayılan durumu hatayı kaydetmek, varsayılan bir değer ayarlamak veya kullanıcıyı bilinmeyen bir değer hakkında bilgilendirmek gibi anlamlı eylemleri gerçekleştirmek için kullanın.

Gelişmiş Switch Özellikleri

Introduction to Switch Expressions in C#

C#'ın evrimiyle birlikte, birden fazla koşullu dalın daha özlü ve ifade edici bir şekilde ele alınması için switch ifadeleri tanıtıldı. Geleneksel switch ifadelerinden farklı olarak, switch ifadeleri bir değer döndürür ve daha akıcıdır, bu da modern C# programlamasında güçlü bir araç haline getirir.

Switch İfadelerinin Söz Dizimi

C#'da bir switch ifadesinin söz dizimi, switch case ifadesinin daha kompakt bir biçimidir. İşte basit bir yapı:

var result = variable switch
{
    value1 => result1,
    value2 => result2,
    _ => defaultResult
};

Alt çizgi (_) sembolü, switch ifadelerinde varsayılan durumu temsil eder ve geleneksel switch ifadelerindeki varsayılan bloğa benzer şekilde işlev görür.

Örnek: Switch İfadesi Kullanımı

Bir sıcaklık okumasını sınıflandırmanız gereken bir senaryoyu düşünün:

int temperature = 25;
string weatherDescription = temperature switch
{
    <= 0 => "Freezing",
    < 20 => "Cold",
    < 30 => "Mild",
    _ => "Hot"
};
Console.WriteLine(weatherDescription);

Bu örnekte, switch ifadesi sıcaklığı kısa bir şekilde sınıflandırır, diğer durumlarla eşleşmeyen herhangi bir senaryoyu kapsayan varsayılan durum (_) ile.

Switch İfadeleri ile Desen Eşleştirme

C#'da switch ifadeleri, desen eşleştirmesine izin vererek onları daha da çok yönlü hale getirir. Türleri, değerleri veya hatta desenleri eşleştirebilirsiniz:

object obj = // some object;
string description = obj switch
{
    int i => $"Integer: {i}",
    string s => $"String: {s}",
    _ => "Unknown type"
};

C# Switch İfadesi vs. Switch Deyimi

  • C# Switch İfadesi: Geleneksel olarak bir değişkenin değeri bazında farklı kod bloklarını yürütmek için kullanılır. Her durum için bir break ifadesi gerektirir.
  • Switch İfadesi: C# 8.0'da tanıtılan, daha özlü bir söz dizimi sağlar ve genellikle bir koşul bazında bir değer döndürülmesi gerektiğinde kullanılır.

Integrating Switch Statements with IronPDF in C#

C# Durum İfadesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 1 - IronPDF

IronPDF Özelliklerini Keşfedin, PDF belgeleri oluşturmak, düzenlemek ve onlarla çalışmak için .NET PDF kütüphanesidir. C# switch ifadeleri veya ifadeleri ile birleştirildiğinde, belirli koşullara dayalı çeşitli PDF ile ilgili işlemleri yönetmek için güçlü bir araç haline gelir. Bu entegrasyon, özellikle PDF içeriği veya meta verileri bazında karar verme gerektiren görevler için kullanışlıdır.

IronPDF'nin temel özelliği HTML'yi düzenler ve stiller ile PDF'ye dönüştürme olup, düzenler ve stiller bozulmadan kalır. Bu, web içeriğinden, raporlar, faturalar ve dokümantasyon dahil olmak üzere PDF'ler oluşturmak için idealdir. HTML dosyaları, URL'ler ve HTML dizgeleri hepsi PDF dosyalarına dönüştürülebilir.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
        
        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
        
        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}

Örnek: IronPDF ve Switch İfadeleri ile Koşullu Filigranlama

Belge içindeki sayfa sayısına göre bir PDF belgeniz olduğunu ve farklı filigranlar uygulamak istediğinizi düşünelim. IronPDF'i bir C# switch ifadesi ile birleştirerek bunu nasıl başarabileceğiniz aşağıda açıklanmıştır:

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        IronPdf.License.LicenseKey = "Your-License-Code";
        PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
        // Define different watermark HTML for each case
        string watermarkHtmlOnePage = "<div style='color:red;'>One Page Document</div>";
        string watermarkHtmlTwoPage = "<div style='color:blue;'>Two Page Document</div>";
        switch (pdf.PageCount)
        {
            case 1:
                // Apply watermark for one-page document
                pdf.ApplyWatermark(watermarkHtmlOnePage);
                break;
            case 2:
                // Apply watermark for two-page documents
                pdf.ApplyWatermark(watermarkHtmlTwoPage);
                break;
            default:
                // Apply a default watermark for other cases
                pdf.ApplyWatermark("<div style='color:green;'>Multiple Page Document</div>");
                break;
        }
        // Save the watermarked PDF
        pdf.SaveAs("watermarked.pdf");
    }
}

İşte bir sayfalık çıktı PDF dosyası:

C# Durum İfadesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 2 - Çıktı

Sonuç

Bu eğitimde, programlamada temel bir karar alma biçimi olan C#'daki switch ifadesini inceledik. Temel yapısını anlayarak başladık ve geleneksel if-else ifadeleriyle karşılaştırarak, birden fazla koşulu ele alırken okuma kolaylığı ve sadelik avantajlarını vurguladık.

Basit switch durumları oluşturduk, varsayılan durumu ile çeşitli senaryoları ele aldık ve switch ifadeleri gibi gelişmiş özellikleri araştırdık. Switch ifadelerinin gerçek dünya uygulaması, dinamik PDF işlemeleri için IronPDF ile birleştirilmiş bir örnekle gösterilerek, switch ifadelerinin bir programcının araç setinde değerli bir araç olabileceği gösterildi.

IronPDF, özelliklerini ve işlevlerini keşfetmenize olanak tanıyan ücretsiz bir deneme sunar. IronPDF'nin tam araç setine erişim ve devam eden kullanım için, rekabetçi bir fiyatlandırma modeliyle başlayan lisanslar sunulmakta olup, C#'taki tüm PDF işleme ihtiyaçlarınız için kapsamlı bir çözüm sunar.

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Teknoloji Direktörü

Jacob Mellor, Iron Software'de Baş Teknoloji Yöneticisidir ve C# PDF teknolojisinde öncü bir mühendisdir. Iron Software'ın ana kod tabanının ilk geliştiricisi olarak, CEO Cameron Rimington ile birlikte şirketin ürün mimarisini 50'den fazla kişilik bir şirkete dönüştürmüştür ve NASA, Tesla ve dünya genelindeki devlet kurumlarına hizmet etmektedir.

...
Daha Fazla Oku

İlgili Makaleler

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez