๋ฐ์ํ go22 [Golang] C์ while = Go์ for ; ์ ์๋ตํ ์ ์๋ค๋ ์ ์์ C์ while ์ Go์์ for ๋ก ์ฐ์ธ๋ค. ์์ package main import "fmt" func main() { sum := 1 for sum < 1000 { sum += sum } fmt.Println(sum) } [์ฐธ๊ณ ์ฌ์ดํธ - a Tour of Go] 2021. 11. 1. [Golang] for ๋ฐ๋ณต๋ฌธ Go ๋ for ๋ฐ๋ณต๋ฌธ์ด๋ผ๋ ๋จ ํ๋์ ๋ฐ๋ณต ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ค. ๊ธฐ๋ณธ์ ์ธ for ๋ฐ๋ณต๋ฌธ์ ; ์ผ๋ก ๊ตฌ๋ณ๋๋ ์ธ ๊ฐ์ง ๊ตฌ์ฑ ์์๋ฅผ ๊ฐ๋๋ค. ์ด๊ธฐํ ๊ตฌ๋ฌธ: ์ฒซ ๋ฒ์งธ iteration ์ ์ ์ํ๋ฉ๋๋ค. ์กฐ๊ฑด ํํ: ๋งค ๋ชจ๋ iteration ์ด์ ์ ํ๋ณ๋ฉ๋๋ค. ์ฌํ ๊ตฌ๋ฌธ: ๋งค iteration ๋ง์ง๋ง์ ์ํ๋ฉ๋๋ค. ์ด๊ธฐํ ๊ตฌ๋ฌธ์ ์ฃผ๋ก ์งง์ ๋ณ์ ์ ์ธ์ผ ๊ฒ์ด๋ฉฐ ๊ฑฐ๊ธฐ์ ์ ์ธ๋ ๋ณ์๋ค์ for๋ฌธ์ ์ค์ฝํ ๋ด์์๋ง ๋ณด์ฌ์ง๋ค. ๋ฐ๋ณต๋ฌธ์ ์กฐ๊ฑด ํ๋ณ์ boolean ๊ฐ์ด false ์ด๋ฉด iterating์ ์ข ๋ฃํ๋ค. ์ฃผ์: C ๋ Java, JavaScript์ ๊ฐ์ ๋ค๋ฅธ ์ธ์ด๋ค๊ณผ ๋ฌ๋ฆฌ Go๋ for๋ฌธ์ ์ธ ๊ฐ์ง ๊ตฌ์ฑ ์์๋ฅผ ๊ฐ์ธ๋ ๊ดํธ๊ฐ ์๊ณ , { } ๊ดํธ๊ฐ ํญ์ ํ์์ด๋ค. ์์ // ์ผ๋ฐ์ ์ธ for ๋ฌธ package ma.. 2021. 11. 1. [Golang] Zero values , Nil slices Zero values ๋ช ์์ ์ธ ์ด๊น๊ฐ ์์ด ์ ์ธ๋ ๋ณ์๋ ๊ทธ๊ฒ์ zero value ๊ฐ ์ฃผ์ด์ง๋ค. zero value ๋ ๋ค์๊ณผ ๊ฐ๋ค. ์ซ์ Type์๋ 0 Boolean Type์๋ False String์๋ "" (๋น ๋ฌธ์์ด) Nil slices (nil ์ฌ๋ผ์ด์ค) Slice์ zero value๋ nil ์ด๋ค. nil Slice์ ๊ธธ์ด(length)์ ์ฉ๋(capacity)์ 0์ด๋ฉฐ, ๊ธฐ๋ณธ ๋ฐฐ์ด์ ๊ฐ์ง๊ณ ์์ง ์๋ค. ์์ package main import "fmt" func main() { var s []int fmt.Println(s, len(s), cap(s)) if s == nil { fmt.Println("nil!") } } [์ฐธ๊ณ ์ฌ์ดํธ - a Tour of Go] 2021. 11. 1. [์ฝ๊ณ ๋น ๋ฅธ Go ์์ํ๊ธฐ] #1.5 for, range, ...args [์ถ์ฒ - Nomad Coders] loop Go์์ loop๋ฅผ for๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ง ๊ฐ๋ฅํ๋ค. package main import "fmt" func superAdd(numbers ...int) int { for index, number := range numbers { // range๋ index๋ฅผ ์ค๋ค. fmt.Println(index, number) } return 1 } func main() { superAdd(1, 2, 3, 4, 5, 6) } package main import "fmt" func superAdd(numbers ...int) int { for i := 0; i < len(numbers); i++ { fmt.Println(numbers[i]) } return 1 } func .. 2021. 10. 26. [์ฝ๊ณ ๋น ๋ฅธ Go ์์ํ๊ธฐ] #1.4 Functions part Two [์ถ์ฒ - Nomad Coders] naked return function์ ๋ ๋ค๋ฅธ ๋ฉ์ง ๋ถ๋ถ์ 'naked' return ์ด๋ผ ๋ถ๋ฆฌ๋ function ์ด๋ค. package main import ( "fmt" "strings" ) func lenAndUpper(name string) (length int, uppercase string) { length = len(name) uppercase = strings.ToUpper(name) return // naked return } func main() { totalLength, up := lenAndUpper("nico") fmt.Println(totalLength, up) } ์ฌ๊ธฐ์๋ Go๊ฐ ์๋์ ์ผ๋ก (length int, uppercase strin.. 2021. 10. 26. [์ฝ๊ณ ๋น ๋ฅธ Go ์์ํ๊ธฐ] #1.3 Functions part One [์ถ์ฒ - Nomad Coders] function์ ๊ธฐ๋ณธ์ ์ธ Type์ string ์ด๋ bool(Boolean) ์ด๋ค. ๊ทธ ์ธ์ ์ซ์๋ฅผ ์ํ ์ฌ๋ฌ ์ข ๋ฅ์ Type๋ค์ด ์๋ค. ์ด๋ฒ ๊ฐ์์์ int๋ฅผ ์ฌ์ฉํด ๋ณผ ๊ฒ์ด๋ค. ๋จผ์ ๊ณฑ์ ์ ์ํ ํจ์๋ฅผ ๋ง๋ค์ด ๋ณด์. Type ์ง์ ์ ์ ํด์ค์ ์๋ฌ๊ฐ ๋ฌ ๊ฒ์ ๋ณผ ์ ์๋ค. TypeScript๋ฅผ ์ฌ์ฉํ ๋ถ๋ค์ด๋ผ๋ฉด ์ต์ํ ๊ฒ์ด๋ค. ์๋ฌ๊ฐ ๋จ์ง ์๊ฒ ํ๊ธฐ ์ํด์ ์๋์ ๊ฐ์ด ๋ฐ๊ฟ์ฃผ๋ฉด ๋๋ค. package main import "fmt" func multiply(a int, b int) int { // (a, b int) ๋ก๋ ๊ฐ๋ฅ return a * b } func main() { fmt.Println(multiply(2, 2)) } ๊ทธ๋ฆฌ๊ณ return์ Type ๊ฐ.. 2021. 10. 26. ์ด์ 1 2 3 4 ๋ค์ ๋ฐ์ํ