شرط Switch در دارت
شرط switch در دارت ابزاری قدرتمند برای اجرای کدهای مختلف بر اساس یک مقدار خاص است. این شرط به شما کمک میکند تا کد خود را به طور سازماندهی شده و خواناتر بنویسید، به خصوص زمانی که با چندین حالت یا گزینه سروکار دارید.
نحوه عملکرد شرط switch در دارت
-
بیان عبارت switch
ابتدا، یک عبارت switch را با یک متغیر یا عبارتی که میخواهید بر اساس آن بررسی انجام شود، تعریف میکنید.
switch (expression) { // کدهای مورد نظر شما } -
موارد (case)
درون بلوک switch، از موارد (case) برای مشخص کردن مقادیر یا حالات مختلف برای بررسی استفاده میکنید. هر مورد با عبارت case و به دنبال آن مقدار یا حالتی که میخواهید بررسی شود، آغاز میشود.
switch (expression) { case value1: // کدهایی که برای value1 اجرا میشود break; case value2: // کدهایی که برای value2 اجرا میشود break; // ... موارد دیگر } -
بلوکهای کد
درون هر مورد، بلوک کدی قرار میدهید که میخواهید در صورت تطابق مقدار عبارت switch با مقدار مورد بررسی، اجرا شود.
switch (expression) { case value1: print("مقدار برابر با value1 است"); break; case value2: print("مقدار برابر با value2 است"); break; // ... موارد دیگر } -
کلمه کلیدی break
استفاده از کلمه کلیدی break بعد از هر بلوک کد، ضروری است. این کار باعث میشود که پس از اجرای کدهای مربوط به یک مورد خاص، از بررسی موارد دیگر صرف نظر شود و به انتهای بلوک switch بروید.
switch (expression) { case value1: print("مقدار برابر با value1 است"); break; case value2: print("مقدار برابر با value2 است"); break; // ... موارد دیگر } -
مورد پیشفرض (default)
(اختیاری) میتوانید از یک مورد پیشفرض (default) برای مشخص کردن کدی که میخواهید در صورتی که هیچ یک از مقادیر موردها با مقدار عبارت switch مطابقت نداشته باشد، اجرا شود، استفاده کنید.
switch (expression) { case value1: print("مقدار برابر با value1 است"); break; case value2: print("مقدار برابر با value2 است"); break; default: print("هیچ مقداری مطابقت ندارد"); }
مزایای استفاده از شرط switch
- خوانایی کد: کد شما را سازماندهی و خواناتر میکند، به خصوص زمانی که با چندین حالت یا گزینه سروکار دارید.
- نگهداری آسان: یافتن و اصلاح خطاها در کدتان آسانتر میشود.
- کارایی: میتواند در مقایسه با استفاده از چندین عبارت if و else کارآمدتر باشد، به خصوص زمانی که تعداد زیادی حالت وجود داشته باشد.
مثال:
فرض کنید میخواهید بر اساس روز هفته، نوع آب و هوا را چاپ کنید:
void main() {
String day = "سه شنبه";
switch (day) {
case "دوشنبه":
print("احتمال بارش باران");
break;
case "سه شنبه":
print("آفتابی");
break;
case "چهارشنبه":
print("ابری");
break;
case "پنج شنبه":
print("طوفانی");
break;
case "جمعه":
print("گرم و آفتابی");
break;
case "شنبه":
print("خنک و ابری");
break;
case "یکشنبه":
print("بارش برف");
break;
default:
print("روز نامعتبر");
}
}
در این مثال، day متغیری است که روز هفته را نشان میدهد. switch بر اساس مقدار day، نوع آب و هوا را چاپ میکند.