0Pricing
C# Academy · Ders

Nullable Değer Türlerine Giriş

int?, double? bildirin ve Nullable türünü anlayın.

Nullable Değer Türlerine Giriş, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 4 dersten oluşur.

Değer Türleri Boş Olamaz

Normalde bir int her zaman bir sayı tutar; hiçbir zaman null olamaz. Ancak eksik bir ölçüm gibi "değer yok" durumunu temsil etmeniz gerekebilir.

using System;

class Program {
    static void Main() {
        int count = 0;
        Console.WriteLine(count);
    }
}

? ile Boş Değer Alabilen Türler

Boş değer alabilmesini sağlamak için bir değer türünün arkasına ? ekleyin. int?, herhangi bir int değerini veya null değerini tutabilir.

using System;

class Program {
    static void Main() {
        int? maybe = null;
        Console.WriteLine(maybe.HasValue);
        maybe = 42;
        Console.WriteLine(maybe);
    }
}

Diğer Boş Değer Alabilen Türler

Her değer türü boş değer alabilir: double?, bool?, DateTime? ve diğerleri.

using System;

class Program {
    static void Main() {
        double? temp = null;
        bool? flag = true;
        Console.WriteLine(temp.HasValue + " " + flag);
    }
}

Nullable<T> Açık Yazımı

int?, Nullable<int> yapısının kısa yazımıdır. Her ikisi de tamamen aynı türe derlenir.

using System;

class Program {
    static void Main() {
        Nullable<int> a = 10;
        int? b = 10;
        Console.WriteLine(a == b);
    }
}

Boş Değer Atama

Boş bir değeri boş değer alabilen bir değişkene serbestçe atayabilir, daha sonra değişkene gerçek bir değer atayabilirsiniz.

using System;

class Program {
    static void Main() {
        int? id = 100;
        Console.WriteLine(id);
        id = null;
        Console.WriteLine(id.HasValue);
    }
}

Boş Değer İçeren Türü Yazdırma

Boş olan bir boş değer alabilen türü yazdırmak, null sözcüğü yerine boş bir dize üretir.

using System;

class Program {
    static void Main() {
        int? value = null;
        Console.WriteLine("[" + value + "]");
    }
}

Boş Değer Alabilen Türe Örtük Dönüşüm

Her int, geçerli bir boş değer alabilen int olduğundan, normal bir int otomatik olarak int? türüne dönüştürülür.

using System;

class Program {
    static void Main() {
        int x = 7;
        int? y = x;
        Console.WriteLine(y);
    }
}

Yöntem Dönüşlerinde Boş Değer Alabilen Türler

Bir yöntem, "değer bulundu" ile "hiçbir şey bulunmadı" durumlarını belirtmek için boş değer alabilen bir tür döndürebilir.

using System;

class Program {
    static int? FindEven(int[] nums) {
        foreach (int n in nums)
            if (n % 2 == 0) return n;
        return null;
    }
    static void Main() {
        Console.WriteLine(FindEven(new[] {1, 3, 4}));
    }
}

Boş Değer Alabilen Türleri Karşılaştırma

Eşitlik beklediğiniz gibi çalışır: iki boş değer alabilen değer, ikisi de boşsa veya ikisi de aynı değeri tutuyorsa eşittir.

using System;

class Program {
    static void Main() {
        int? a = null;
        int? b = null;
        Console.WriteLine(a == b);
        int? c = 5;
        Console.WriteLine(c == 5);
    }
}

Boş Değer Alabilen Türler Neden Kullanılır

Boş değer alabilen değer türleri, isteğe bağlı verileri temiz bir şekilde modeller. Örneğin, NULL değerine izin veren bir veritabanı sütununu veya kullanıcının boş bıraktığı bir alanı temsil edebilir.

using System;

class Program {
    static void Main() {
        int? userAge = null;
        string msg = userAge.HasValue ? "Age set" : "Age unknown";
        Console.WriteLine(msg);
    }
}

Boş Değer Alabilen Tür Bir Yapıdır

Nullable<T> kendi başına bir değer türüdür; bu nedenle boş değer alabilen bir değişken, boş olabilse de hiçbir zaman bir başvuru değildir.

using System;

class Program {
    static void Main() {
        int? n = 3;
        Console.WriteLine(n.GetType().Name);
    }
}

Hızlı Kontrol

Boş değer alabilen değer türleri konusundaki anlayışınızı sınayın.

Özet

int gibi değer türleri varsayılan olarak boş olamaz. ? eklemek, Nullable<T> türünün kısa yazımı olan boş değer alabilen bir tür (int?) oluşturur.

Boş değer alabilen türler, eksik veya isteğe bağlı verileri temsil etmenizi sağlar, temel türden örtük olarak dönüştürülebilir ve kendileri de yapıdır.

Sıkça Sorulan Sorular

“Nullable Değer Türlerine Giriş” dersi ücretsiz mi?

Evet — “Nullable Değer Türlerine Giriş” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 4 dersten oluşur.

“Nullable Değer Türlerine Giriş” dersinde ne öğreneceğim?

int?, double? bildirin ve Nullable türünü anlayın. C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

C# Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Nullable Değer Türlerine Giriş” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Nullable Değer Türlerine Giriş
  2. HasValue ve Value Özellikleri
  3. Null Birleştirme İşleçleri
  4. Hesaplamalarda Nullable
← C# Academy Sayfasına Dön