switch
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ Π΄Π²Π΅ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π²ΡΠ±ΠΎΡΠ° switch
: Π²ΡΠ±ΠΎΡ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ Π²ΡΠ±ΠΎΡ ΠΏΠΎ ΡΠΈΠΏΡ. ΠΠ½ΡΡΡΡΠΊΡΠΈΡ switch
Π² Go Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²ΡΠ΅ Π²Π΅ΡΠΊΠΈ Π΄ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ break
(ΠΊΠ°ΠΊ Π² Π΄ΡΡΠ³ΠΈΡ
ΡΠ·ΡΠΊΠ°Ρ
; ΡΠΎ Π΅ΡΡΡ Π² Go Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π·Π°Π²Π΅ΡΡΠ°ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ break
ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·Π΄Π΅Π» case
). ΠΠ΄Π½Π°ΠΊΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ²Π½ΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ "ΠΏΡΠΎΠ²Π°Π»ΠΈΠ²Π°ΡΡΡΡ" Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π·Π΄Π΅Π» case
Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ fallthrough
.
ΠΡΠ±ΠΎΡ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
switch Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°ΡΠΠ½ΡΡΡΡΠΊΡΠΈΡ; Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ { // ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ = true
case ΡΠΏΠΈΡΠΎΠΊΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ1: Π±Π»ΠΎΠΊ1 // ΡΠΏΠΈΡΠΎΠΊΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΡΡΡ Π·Π°ΠΏΡΡΡΠΌΠΈ
...
case ΡΠΏΠΈΡΠΎΠΊΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉN: Π±Π»ΠΎΠΊN // ΡΠΈΠΏ ΡΠΏΠΈΡΠΎΠΊΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
default: Π±Π»ΠΎΠΊD
}
ΠΡΠ±ΠΎΡ ΠΏΠΎ ΡΠΈΠΏΡ
switch Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°ΡΠΠ½ΡΡΡΡΠΊΡΠΈΡ; ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΡΠ’ΠΈΠΏΠ° {
case ΡΠΏΠΈΡΠΎΠΊΠ’ΠΈΠΏΠΎΠ²1: Π±Π»ΠΎΠΊ1
...
case ΡΠΏΠΈΡΠΎΠΊΠ’ΠΈΠΏΠΎΠ²N: Π±Π»ΠΎΠΊN
default: Π±Π»ΠΎΠΊD
}
Π‘Π»ΡΠΆΠΈΡ Π΄Π»Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² ΡΠ°ΡΠ΅.
switch true
ΠΡΠΎ Π°Π½Π°Π»ΠΎΠ³ (Π»ΡΡΡΠΈΠΉ) Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π΄Π»ΠΈΠ½Π½ΡΡ ΡΠ΅ΠΏΠΎΡΠ΅ΠΊ if-then-else:
t := time.Now()
switch {
case t.Hour() < 12:
fmt.Println("Good morning!")
case t.Hour() < 17:
fmt.Println("Good afternoon.")
default:
fmt.Println("Good evening.")
}
Last updated