Go์ switch๋ ๋ค์ด์ด ์ค๋ ๋ชจ๋ case๋ฅผ ์คํํ๋ ๊ฒ์ด ์๋๋ผ,
์ค์ง ์ฒซ ๋ฒ์งธ๋ก ์ ํ๋ ์ผ์ด์ค๋ง์ ์คํํ๋ค๋ ์ ์ ์ ์ธํ๊ณ ๋ C๋ C++, Java, Javascript, PHP์ ์ ์ฌํ๋ค.
์ฌ์ค์ ์์ ์ธ์ด๋ค์์๋ ๊ฐ๊ฐ์ case์ ๋ง์ง๋ง ๋ถ๋ถ์ break ๊ตฌ๋ฌธ์ด ํ์ํ์ง๋ง Go์์๋ ์๋์ผ๋ก break๊ฐ ์ ๊ณต๋๋ค.
๋ค๋ฅธ ์ค์ํ ์ฐจ์ด์ ์ Go์ switch case๋ ์์์ผ ํ์๊ฐ ์์ผ๋ฉฐ, ๊ทธ ๊ฐ๋ค์ ์ ์์ผ ํ์๋ ์๋ค.
์์
package main
import (
"fmt"
"runtime"
)
func main() {
fmt.Print("Go runs on ")
switch os := runtime.GOOS; os {
case "darwin":
fmt.Println("OS X.")
case "linux":
fmt.Println("Linux.")
default:
// freebsd, openbsd,
// plan9, windows...
fmt.Printf("%s.\n", os)
}
}
runtime.GOOS; ๋ runtime ํจํค์ง์ ์ ์๋์ด ์๋ ์์์ด๊ณ ์ด์์ฒด์ ๋ฅผ ํ์ธํ ๋ ์ฌ์ฉํ๋ค.
์ด์์ฒด์ ์ ๋ฐ๋ผ darwin, freebsd, linux, windows๋ฅผ ๋ฐํํ๋ฉฐ ์ด ๊ฐ์ผ๋ก ๋ถ๊ธฐ ์ฒ๋ฆฌ๋ฅผ ํ๋ค.
[์ฐธ๊ณ ์ฌ์ดํธ - a Tour of Go]
'Data Base > Go' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Golang] Slices (์ฌ๋ผ์ด์ค) (0) | 2021.11.01 |
---|---|
[Golang] defer (0) | 2021.11.01 |
[Golang] if๋ฌธ (0) | 2021.11.01 |
[Golang] C์ while = Go์ for (0) | 2021.11.01 |
[Golang] for ๋ฐ๋ณต๋ฌธ (0) | 2021.11.01 |
๋๊ธ