package main
import "fmt"
func swap(x, y string) (string, string) {
return y, x
}
func main() {
a, b := swap("hello", "world")
fmt.Println(a, b)
}
실행결과
world hello
위의 코드는 함수 swap이 두 개의 문자열을 입력 받아서 순서를 바꾸어 주는 간단한 기능을 수행한다. 뭐 별 내용은 없고, 여러 개의 함수 결과값(반환값)을 가질 수 있는 게 핵심이다.
world hello... 세계가 안녕한다...
package main
import "fmt"
func split(sum int) (x, y int) {
x = sum * 4 / 9
y = sum - x
return
}
func main() {
fmt.Println(split(17))
}
실행결과
7 10
위의 코드는 입력받은 정수값을 자릿수별로 나누어(분해해) 주는 코드이다.
함수 선언할 때 결과값 부분에 x, y라는 이름을 붙여주니까return
키워드만 사용해도 자동으로 반환해준다.
함수 선언할 때 결과값을 처음에 명확하게 설계하고 들어간 후, return만 간단히 때려버리는 cool함을 보여준다.
https://go-tour-kr.appspot.com/#9
https://go-tour-kr.appspot.com/#10