C # - Nullable'lar
C # özel bir veri türü sağlar, nullable Normal değerler aralığı ve null değerler atayabileceğiniz türler.
Örneğin, bir Nullable <Int32> değişkeninde -2,147,483,648 ile 2,147,483,647 arasındaki herhangi bir değeri veya null depolayabilirsiniz. Benzer şekilde, bir Nullable <bool> değişkeninde true, false veya null atayabilirsiniz. Bir bildirmek için sözdiziminullable tür aşağıdaki gibidir -
< data_type> ? <variable_name> = null;
Aşağıdaki örnek, null yapılabilir veri türlerinin kullanımını gösterir -
using System;
namespace CalculatorApplication {
class NullablesAtShow {
static void Main(string[] args) {
int? num1 = null;
int? num2 = 45;
double? num3 = new double?();
double? num4 = 3.14157;
bool? boolval = new bool?();
// display the values
Console.WriteLine("Nullables at Show: {0}, {1}, {2}, {3}", num1, num2, num3, num4);
Console.WriteLine("A Nullable boolean value: {0}", boolval);
Console.ReadLine();
}
}
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
Nullables at Show: , 45, , 3.14157
A Nullable boolean value:
Boş Birleştirme Operatörü (??)
Null coalescing operatörü, null yapılabilir değer türleri ve başvuru türleriyle kullanılır. Bir işleneni, örtük bir dönüşümün mümkün olduğu başka bir null yapılabilir (veya değil) değer türü işlenen türüne dönüştürmek için kullanılır.
İlk işlenenin değeri null ise, operatör ikinci işlenenin değerini döndürür, aksi takdirde birinci işlenenin değerini döndürür. Aşağıdaki örnek bunu açıklıyor -
using System;
namespace CalculatorApplication {
class NullablesAtShow {
static void Main(string[] args) {
double? num1 = null;
double? num2 = 3.14157;
double num3;
num3 = num1 ?? 5.34;
Console.WriteLine(" Value of num3: {0}", num3);
num3 = num2 ?? 5.34;
Console.WriteLine(" Value of num3: {0}", num3);
Console.ReadLine();
}
}
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
Value of num3: 5.34
Value of num3: 3.14157