گاهی اوقات، شما می خواهید کد C# فقط تحت شرایط خاصی اجرا شود. این عبارات و عملگرها به شما در انجام این کار کمک می کنند.
عبارات شرطی به یک برنامه اجازه می دهد تا اقدامات مختلفی را بر اساس شرایط خاص انجام دهد. آنها معمولاً به شکل یک عبارت “if-then” نوشته می شوند، که در آن یک بلوک کد تنها در صورتی اجرا می شود که یک شرط خاص درست باشد.
در سی شارپ روش های مختلفی برای نوشتن دستورات شرطی وجود دارد. این شامل دستورات استاندارد if-else، دستورهای سوئیچ، عملگرهای سه تایی و عملگرهای سه تایی تهی می شود.
نحوه نوشتن دستورات شرطی در سی شارپ
روش های مختلفی برای نوشتن دستورات شرطی در جاوا اسکریپت، جاوا، سی پلاس پلاس، پایتون و سایر زبان ها وجود دارد. در سی شارپ، می توانید تمرین این عبارات را در یک برنامه ساده کنسول سی شارپ در ویژوال استودیو شروع کنید.
بیانیه استاندارد if/else-if/else
یک بیانیه اگر شرطی را آزمایش می کند که درست ارزیابی می شود. اگر شرط به درستی ارزیابی شود، کد درون بلوک اجرا خواهد شد. در غیر این صورت نمی شود.
int age = 25;
if (age >= 18)
{
Console.WriteLine("You are an adult.");
}
اگر میخواهید بلوک کد دیگری برای مجموعهای از شرایط اجرا شود، میتوانید بلوکهای other-if اضافه کنید. یک بلوک else زمانی اجرا می شود که هیچ یک از شرایط قبلی درست ارزیابی نشود.
int age = 25;
if (age >= 18)
{
Console.WriteLine("You are an adult.");
}
else if (age >= 13)
{
Console.WriteLine("You are a teenager.");
}
else
{
Console.WriteLine("You are a child.");
}
در مثال بالا، اولین دستور if درست است و اولین بلوک کد را اجرا می کند. اگر مقدار متغیر سن 15 بود، برنامه به جای آن بلوک کد دوم را اجرا می کرد. اگر متغیر سن 8 بود، برنامه کد را در داخل بلوک else اجرا می کرد.
بیانیه اگر تک خطی (بدون بریس)
اگر بلوک کدی که میخواهید اجرا کنید فقط از یک خط تشکیل شده است، میتوانید بریسهای فرفری را بعد از شرط if حذف کنید:
if (age >= 18)
Console.WriteLine("You are an adult.");
این همچنین برای بلوک های else-if و else صدق می کند:
if (age >= 18)
Console.WriteLine("You are an adult.");
else if (age >= 13)
Console.WriteLine("You are a teenager.");
else
Console.WriteLine("You are a child.");
سوئیچ بیانیه
اگر میخواهید از استفاده بیش از حد دستورات if خودداری کنید، دستور switch در سی شارپ میتواند راه راحتتری برای سازماندهی شرایط باشد.
در یک سوئیچ، می توانید مقداری را برای مقایسه با چندین حالت وارد کنید. موارد شامل گزینه های احتمالی است که مقدار می تواند مطابقت داشته باشد.
int score = 4;
char grade;
switch (score)
{
case 5:
grade = 'A';
break;
case 4:
grade = 'B';
break;
case 3:
grade = 'C';
break;
case 2:
grade = 'D';
break;
case 1:
grade = 'E';
break;
default:
grade = 'F';
break;
}
Console.WriteLine("Your grade is: " + grade);
اپراتور سه تایی
عملگر سه تایی روشی کوتاه برای نوشتن یک عبارت if در سی شارپ است. از این نحو پیروی می کند:
condition ? code when true : code when false
عبارت شامل شرط و به دنبال آن علامت سوال است. در سمت چپ کولون کدی وجود دارد که وقتی شرط درست باشد برنامه اجرا می شود. در سمت راست کولون کدی است که برنامه در صورت نادرست بودن شرط اجرا می شود.
int result = 49;
var message = result > 50 ? "You passed!" : "You failed!";
Console.WriteLine(message);
اپراتور سه تایی ناتوان
می توانید از عملگر سه تایی nullable برای اختصاص مقداری به متغیری که ممکن است null باشد استفاده کنید. از نحو زیر استفاده می کند:
var result = value ?? defaultValue
مثال زیر مقدار متغیر num را به متغیر عدد اختصاص می دهد. اگر متغیر num null باشد، به جای آن مقدار پیش فرض 0 را به متغیر عدد اختصاص می دهد.
int? num = null;
int number = num ?? 0;
استفاده از دستورات شرطی در سی شارپ
می توانید از دستورات شرطی برای ایجاد برنامه هایی استفاده کنید که می توانند به شرایط خاص پاسخ دهند. هنگام ساخت اپلیکیشن خود، مهم است که ساختارهای دیگری را نیز در نظر بگیرید که می توانند کد شما را کارآمدتر کنند.