تک حالت (Single-case)
گاهی چند مقدار نتیجه ای یکسان دارند. با «case تک حالت» چند مقدار را در یک حالت می گذاریم. مثل نمره های 18 و 19 و 20 که همگی «عالی» هستند.
سینتکس case با چند مقدار
در Go می توانی چند مقدار را با ویرگول در یک case بنویسی.
switch expr {
case x, y:
// وقتی expr برابر x یا y است
case v, w:
// وقتی expr برابر v یا w است
default:
// وقتی هیچ case مطابق نیست
}
مثال: گروه بندی روزهای هفته
روزهای فرد، زوج، و آخرهفته را با یک سوئیچ گروه بندی می کنیم.
package main
import (
"fmt"
)
func main() {
day := 5
switch day {
case 1, 3, 5:
fmt.Println("Odd weekday")
case 2, 4:
fmt.Println("Even weekday")
case 6, 7:
fmt.Println("Weekend")
default:
fmt.Println("Invalid day of day number")
}
}
گام های عملی
- یک متغیر (Variable) مقدار بده.
- سوئیچ را روی همان متغیر بنویس.
- مقدارهای هم معنا را در یک case فهرست کن.
نکته: این روش، ifهای تکراری را کم می کند و کد خواناتر می شود.
برای مرور «سوئیچ» صفحه سوئیچ را ببین. همچنین توضیح کامل همین روش را در تک حالت دنبال کن.
جمع بندی سریع
- چند مقدار را در یک case بنویس.
- ویرگول بین مقدارها لازم است.
- default مسیر امن برنامه است.
- کد کوتاه تر و منظم تر می شود.