마법 상자 (func)
반복되는 코드들을 묶어서 이름표를 붙여주는 것, 함수입니다.
Go에서는 func라는 단어를 사용합니다.
함수 만들기
func sayHello() {
fmt.Println("안녕!")
}
func main() {
sayHello() // 상자 사용!
}
재료와 결과물
Go의 함수는 아주 깐깐해서 상자에 들어가는 재료와 나오는 결과물의 **종류(타입)**를 미리 말해줘야 합니다.
func add(a int, b int) int {
return a + b
}
func main() {
result := add(10, 20)
fmt.Println(result)
}
번역:
add라는 마법 상자를 정의한다:
(재료는 숫자 a와 숫자 b)
(나오는 결과물은 숫자)
{
a와 b를 더한 값을 돌려준다!
}
Go 함수의 매력: 여러 개 돌려주기
Go의 마법 상자는 특이하게 여러 개의 결과물을 동시에 뱉어낼 수 있습니다!
func swap(a string, b string) (string, string) {
return b, a
}
상자 하나에 재료 두 개를 넣었더니, 순서가 바뀐 결과물 두 개가 뿅 하고 튀어나오는 것이죠.
이런 명확함과 강력함이 Go 언어의 가장 큰 매력입니다!