DEV Community

Elshod Ibodullayev
Elshod Ibodullayev

Posted on

Nullable Types (int?) C# da

Nullable Types (int?) C# da

C# da int, double, bool kabi value type lar null bo‘la olmaydi.

Ammo dasturchilar ko‘p hollarda null qiymat bilan ishlashadi:

  • Database dan qiymat kelmasligi mumkin
  • Foydalanuvchi son kiritmasligi mumkin
  • Optional field lar bo‘lishi mumkin

Shunday paytda nullable types ishlatiladi.


Nullable Type qanday yoziladi?

Tip nomidan keyin ? qo‘yiladi:

int? age = null; // null qabul qiladi
age = 25;        // keyinchalik qiymat berish mumkin
Enter fullscreen mode Exit fullscreen mode

Asosiy foydalanish usullari

  1. HasValue va Value

int? salary = 5000;

if (salary.HasValue)
    Console.WriteLine($"Ish haqi: {salary.Value}");
else
    Console.WriteLine("Ish haqi belgilanmagan");
Enter fullscreen mode Exit fullscreen mode
  1. Null-coalescing (??)
int? bonus = null;
int finalBonus = bonus ?? 1000; // agar null bo‘lsa, 1000 olinadi
Console.WriteLine(finalBonus); // 1000
Enter fullscreen mode Exit fullscreen mode
  1. Real hayotiy misol
class Employee
{
    public string Name { get; set; }
    public int? Age { get; set; } // Yoshi majburiy emas
}

var emp = new Employee { Name = "Ketmonbek" };
Console.WriteLine(emp.Age ?? 0); // Agar null bo‘lsa, 0 chiqadi
Enter fullscreen mode Exit fullscreen mode

Xulosa

Oddiy value types null bo‘la olmaydi

int?, double?, bool? kabi nullable types qiymat + null saqlaydi

Asosan bazadan keladigan null qiymatlar yoki majburiy bo‘lmagan field lar uchun ishlatiladi

Top comments (0)