๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

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.
๋ฐ˜์‘ํ˜•