Use switch Over if-else Chains
if-else zanjiri o'rniga switch ishlating
Bitta qiymatni bir nechta variant bilan solishtirayotganda, uzun if/else if/else if zanjiri o'rniga switch ancha toza va o'qish oson.
example.go
package main
import "fmt"
func dayNameOld(n int) string {
if n == 1 {
return "Dushanba"
} else if n == 2 {
return "Seshanba"
} else if n == 3 {
return "Chorshanba"
} else {
return "Noma'lum"
}
}
func dayName(n int) string {
switch n {
case 1:
return "Dushanba"
case 2:
return "Seshanba"
case 3:
return "Chorshanba"
default:
return "Noma'lum"
}
}
func main() {
fmt.Println(dayName(2))
fmt.Println(dayName(9))
}Go'ning switchi boshqa tillardan farqli — har bir casedan keyin avtomatik break bo'ladi ("fallthrough" kerak bo'lmasa yozish shart emas). Bu uni if/else if zanjiridan xavfsizroq va qisqaroq qiladi, ayniqsa variantlar ko'p bo'lganda.
>_ Exercise
if-else zanjirini switch'ga o'giring.
- •sizeLabel(size string) string yozing: "S"->"Kichik", "M"->"O'rta", "L"->"Katta", aks holda "Noma'lum"
- •switch operatoridan foydalaning (if/else emas)
Stuck? Reveal a hint to help you.
Hints (0/3)
Key Takeaway
Key Takeaway:
Bitta qiymatni ko'p variant bilan solishtirishda switch — uzun if/else if zanjiridan qisqaroq va xavfsizroq (avtomatik break tufayli).
NEXT UP
Advanced Switch Patterns
OUTPUT
$ go run main.go
Kodingizni ishga tushiring