Nullable

Nullable tipler, C# dilinde değer (value) türlerinin null değerini kabul edebilmesini sağlayan özel bir türdür. Normalde, değer türleri (int, float, bool vb.) null değeri kabul etmezler; yani bir değer türü değişkeni her zaman bir değere sahip olmalıdır. Ancak nullable tipler, null değerini bir değer olarak kabul eder ve böylece değer türlerinin null olabileceği durumları ele alır.

Nullable tiplerin C# dilindeki temel kullanımı, veritabanı işlemleri gibi durumlarda, bir sütunun veritabanında null olabileceği durumları temsil etmek için kullanılır. Ayrıca, bir değişkenin bir değere sahip olup olmadığını kontrol etmek için de kullanılabilirler.

Nullable tipler, değer türlerinin yanına bir soru işareti (?) eklenerek tanımlanır. Örneğin, “int?” bir nullable integer türüdür.

İşte bir nullable tür örneği:

int? nullableInt = null;

Bu örnekte, nullableInt değişkeni bir nullable integer türüdür ve başlangıçta null değere sahiptir.

Nullable tiplerin bazı özellikleri:

  1. Null Değer: Nullable tipler, null değerini kabul edebilir. Bu, bir değer türünün normalde kabul etmediği bir davranıştır.
  2. Value ve HasValue Özellikleri: Nullable tiplerin Value özelliği, değer türünün değerini içerir. Ancak nullable türün null olup olmadığını kontrol etmek için HasValue özelliği kullanılır.
  3. Null-Coalescing Operatörü (??): Nullable tiplerde, null değeriyle bir değer atanmadıysa varsayılan bir değer belirlemek için ?? operatörü kullanılabilir.
  4. Boxing ve Unboxing: Nullable tipler, value türlerine karşı boxing ve unboxing işlemlerini etkiler.

Örnek kullanım:

int? nullableInt = 10;
int? nullableInt2 = null;

if (nullableInt.HasValue)
{
    Console.WriteLine($"nullableInt: {nullableInt.Value}");
}
else
{
    Console.WriteLine("nullableInt is null");
}

int result = nullableInt2 ?? 20; // nullableInt2 null ise 20, değilse nullableInt2'nin değeri atanır
Console.WriteLine($"result: {result}");

Nullable tipler, değer türlerinin null değeriyle uyumlu hale getirilmesine yardımcı olur ve yazılım geliştirme sürecinde bazı durumları daha kolay ele almayı sağlar.

Last Updated : 05/03/2024

Operatörler

Değer (Value) – Referans (Reference) Türler

2023 © Coding, Developed by alkanfatih.com