سوییچ (Switch)
اینجا «سوییچ جاوا» را خیلی ساده می بینیم. سوییچ (Switch) یعنی انتخاب از چند حالت. کیس (Case) یعنی گزینه مخصوص هر حالت. همچنین break یعنی خروج از سوییچ. و default یعنی حالت پیش فرض.
سوییچ برای انتخاب های زیاد
وقتی if...else زیاد می شود، کد شلوغ می شود. اما سوییچ ساده تر است. ابتدا عبارت یک بار ارزیابی می شود. سپس با caseها مقایسه می شود. در نهایت، caseِ برابر اجرا می شود. بعد هم break جلوی ادامه را می گیرد. اگر هیچ case نخورد، default اجرا می شود.
switch (expression) {
case x: {
// code block
break;
}
case y: {
// code block
break;
}
default: {
// code block
}
}
مثال: شماره روز تا نام روز
یک عدد روز را بگیر. سپس نام روز را چاپ کن.
int day = 4;
switch (day) {
case 1: {
System.out.println("Monday");
break;
}
case 2: {
System.out.println("Tuesday");
break;
}
case 3: {
System.out.println("Wednesday");
break;
}
case 4: {
System.out.println("Thursday");
break;
}
case 5: {
System.out.println("Friday");
break;
}
case 6: {
System.out.println("Saturday");
break;
}
case 7: {
System.out.println("Sunday");
break;
}
}
// Outputs "Thursday"
کلیدواژه break
وقتی break اجرا شود، از سوییچ خارج می شوی. بنابراین، تست caseهای بعدی متوقف می شود. این کار اجرا را سریع تر می کند.
default؛ حالت پیش فرض
اگر هیچ case برابر نشد، default اجرا می شود. این مثل «هیچ کدام» است.
int day = 4;
switch (day) {
case 6: {
System.out.println("Today is Saturday");
break;
}
case 7: {
System.out.println("Today is Sunday");
break;
}
default: {
System.out.println("Looking forward to the Weekend");
}
}
// Outputs "Looking forward to the Weekend"
نکته: اگر default آخرین بلاک باشد، نیاز به break نیست.
گام های تمرینی
- یک متغیر (Variable) مثل day بساز.
- برای هر case خروجی مخصوص بنویس.
- مقدار را عوض کن و نتیجه را ببین.
پیوندهای مفید
برای چند حالت کم، از else if استفاده کن. برای تمرین واقعی، صفحه نمونه های واقعی را ببین. همچنین این صفحه سوییچ جاوا را نشانه گذاری کن.
جمع بندی سریع
- سوییچ برای انتخاب های زیاد عالی است.
- هر case کار خودش را دارد.
- با break از سوییچ خارج شو.
- default برای حالت های نامطابق است.
- کد مرتب تر از ifهای پشت سرهم می شود.