Go에는 많은 Type들이 있다. 여기를 참고해보자.
곱셈 함수를 만들어보자. typescript에서 argument에 각각의 type을 설정해주듯이 go에서도 type을 설정해 주어야 한다.
// 아래 각각의 argument에다가 Type을 설정해주자.
package main
import "fmt"
func multiply(a , b ) {
return a * b
}
func main() {
fmt.Println(multiply(2, 2))
}
package main
import "fmt"
func multiply(a, b int) {
return a * b
// 이렇게 하게 된다면 no result values expectedcompiler라고 뜨게 된다.
}
func main() {
fmt.Println(multiply(2, 2))
// multiply(2, 2) (no value) used as valuecompilerTooManyValues
}
// 이렇게 해야한다.
package main
import "fmt"
func multiply(a, b int) int {
return a * b
}
func main() {
fmt.Println(multiply(2, 2))
}
그리고 go에서는 여러개의 return값을 받을 수가 있는데 하나 예시를 들어보자.
package main
import "strings"
func lenAndUpper(name string) (int, string) {
return len(name), strings.ToUpper(name)
}
func main() {
}
이처럼 go는 여러개의 package도 가지고 있다. 여기를 참고해보자.
package main
import (
"fmt"
"strings"
)
func lenAndUpper(name string) (int, string) {
return len(name), strings.ToUpper(name)
}
func main() {
totalLength, upperName := lenAndUpper("jay")
fmt.Println(totalLength, upperName)
}
// 3 JAY
value값을 _을 이용해서 무시할 수도 있는데 아래와 같이 uppername을 무시했다.
package main
import (
"fmt"
"strings"
)
func lenAndUpper(name string) (int, string) {
return len(name), strings.ToUpper(name)
}
func main() {
totalLength, _ := lenAndUpper("jay")
fmt.Println(totalLength)
}
// 3
단순히 반복하는 코드도 만들어보자.
package main
import "fmt"
func repeatMe(words ...string) {
fmt.Println(words)
}
func main() {
repeatMe("nico", "lynn", "dal", "marl", "flynn")
}
// [nico lynn dal marl flynn]
<출처 노마드 코더: 쉽고 빠른 Go 시작하기>
https://nomadcoders.co/go-for-beginners/lobby
Watch Now – 노마드 코더 Nomad Coders
nomadcoders.co
'Golang' 카테고리의 다른 글
if & switch (0) | 2021.12.12 |
---|---|
for&range&args (0) | 2021.12.12 |
Functions (2) (0) | 2021.12.11 |
go: cannot find main module error (0) | 2021.12.11 |
Go 들어가기에 앞서 Building 내용 (0) | 2021.12.11 |