!!! ์ด๊ฒ๋ง ์๋ฉด ๋๋ GOPHER !!!
01. ์์ const name string = "a"
๋ณ์ var name string = "a"
function ๋ด์์๋ ์ถ์ฝ ๊ฐ๋ฅ name := "a"
02. ๋ณต์ ํํ์ return
int์ string์ ๋์์ ๋ฆฌํดํจ
func test (a, b int) (int, string) {...}
03. ๋ฌด์ ํ ํ๋ผ๋ฏธํฐ
test("a", "b", "c", "d", "e");
func test (a ...string) { ... }
04. naked return
๋ฆฌํด๊ฐ์ ๋ณ์๋ช
์ function์ ์ธ์์ ์ง์ ํ์ฌ return ์์๋ return ๋ฌธ์ฅ๋ง ์ฌ์ฉํจ
05. defer
function ์ด ๋๋๊ณ ๋ ์งํ ์คํํจ, ํ์ผ์ ๋ซ๋๋์ง ๋ฑ์ ์ฌ์ฉํจ
06. for idx, num := range numArr{ ...
07. koreanAge := age+2
if koreanAge < 18 { return true }
์ ๋์ค์ if-else์์ ์ฌ์ฉํ๋ ๋ฒ ๋ฆฌ์ด๋ธ ์ต์คํ๋ ์
์ผ๋ก ๋ฐ๊พธ๋ฉด
-> if koreanAge := age+2; koreanAge < 18 { return true }
08. ํฌ์ธํฐ
| & : ์ฃผ์ | * : ์ฃผ์์ ๋ด๊ธด ๊ฐ์ ์ดํด๋ด | ์ฃผ์์ *๋ฅผ ์ฐ๊ณ ์ฃผ์์ ๋ด๊ธด ๊ฐ์ ๋ณ๊ฒฝํ ์ ์์ |
| a := 2 b := &a Print(a, *b) 2 2 |
a := 2 b := &a a = 5 Print(*b) 5 |
a := 2 b := &a *b = 8 Print(a) 8 |
09. array -> a := [5]string{"b","c","d"}
slice -> a := []string{"b","c","d"} append{a, "e"}
10. a := map[string]int{"b":1, "c":2}
for key, val := range a { fmt.Print(val) }
11. type p struct {
a string
b int
c [] string
}
d := a{a: "a", b:1, c:arr}