C# – متغیرهای nullable
در C# نوع دادهای خاصی به نام nullable
وجود دارد که میتواند محدودهای از مقادیر معمولی و همچنین مقدار null
را نگهداری کند.
به عنوان مثال، میتوانید هر مقداری از -2,147,483,648 تا 2,147,483,647 یا مقدار null
را در یک متغیر از نوع Nullable<Int32>
ذخیره کنید. به طور مشابه، میتوانید مقادیر true
، false
، یا null
را در یک متغیر از نوع Nullable<bool>
ذخیره کنید. سینتکس اعلام یک نوع nullable به شکل زیر است:
<data_type>? <variable_name> = null;
مثال استفاده از انواع دادهای Nullable
در این مثال استفاده از انواع دادهای nullable نشان داده شده است:
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?();
// نمایش مقادیر
Console.WriteLine("Nullables at Show: {0}, {1}, {2}, {3}", num1, num2, num3, num4);
Console.WriteLine("A Nullable boolean value: {0}", boolval);
Console.ReadLine();
}
}
}
وقتی کد بالا کامپایل و اجرا شود، نتیجه زیر تولید میشود:
Nullables at Show: , 45, , 3.14157
A Nullable boolean value:
عملگر Null Coalescing Operator (??)
عملگر همآیند نال با انواع مقدار nullable و انواع مرجع استفاده میشود. این عملگر برای تبدیل یک عملوند به نوع دیگری از نوع nullable (یا غیر nullable) که یک تبدیل ضمنی ممکن است، استفاده میشود.
اگر مقدار عملوند اول null
باشد، این عملگر مقدار عملوند دوم را برمیگرداند، در غیر این صورت مقدار عملوند اول را برمیگرداند. مثال زیر این موضوع را توضیح میدهد:
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();
}
}
}
وقتی کد بالا کامپایل و اجرا شود، نتیجه زیر تولید میشود:
Value of num3: 5.34
Value of num3: 3.14157
نکات کلیدی
- انواع nullable: به شما امکان میدهند مقادیر معمولی و
null
را ذخیره کنید. - عملگر همآیند نال: به شما امکان میدهد به سادگی بررسی کنید که آیا مقدار یک متغیر
null
است و در صورت نیاز یک مقدار پیشفرض تعیین کنید.
با استفاده از این ویژگیها، میتوانید کدهای خود را انعطافپذیرتر و خواناتر کنید و از خطاهای ناشی از مقادیر null
جلوگیری کنید.
برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید. صفحه ورود و ثبت نام