🔥 여러 개의 반환값

171자
2분

Go 언어에서는 함수가 여러 개의 결과값을 반환할 수 있는데요. 이를 활용하면 함수의 활용도를 더욱 높일 수 있답니다.

예를 들어, 두 개의 문자열을 서로 바꿔주는 swap 함수를 만들어 볼까요?

go
func swap(x, y string) (string, string) {
	return y, x
}
 
go
func swap(x, y string) (string, string) {
	return y, x
}
 

위 코드를 보시면 swap 함수는 두 개의 string 타입 매개변수 xy를 받아서, 두 개의 string 타입 결과값을 반환하고 있어요. 반환값은 yx로, 입력받은 두 문자열의 순서를 바꿔서 반환하는 거죠.

이제 swap 함수를 사용해 볼까요?

go
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)
}
 
go
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)
}
 

main 함수에서 swap 함수를 호출할 때는 a, b := swap("hello", "world")와 같이 할 수 있답니다. 이렇게 하면 swap 함수가 반환한 두 개의 결과값이 ab 변수에 순서대로 저장되는 거예요.

위 코드를 실행하면 다음과 같은 결과가 출력될 거예요.

text
world hello
text
world hello

보시는 것처럼 "hello""world" 문자열의 순서가 바뀌어 출력되었죠?

이렇게 Go 언어에서는 함수가 여러 개의 결과값을 반환할 수 있어서 코드의 가독성과 유연성을 높일 수 있답니다.

YouTube 영상

채널 보기
AI를 위한 선형대수 - 전단, 행렬식, 변환의 핵심
AI 가중치와 내적, 선형대수로 이해하기
AI를 위한 선형대수 - 신경망의 선형 결합
모순과 귀닙법 | MIT 컴퓨터 과학을 위한 수학
투영과 예측, 그리고 선형 결합 | 선형대수학
AI에서 선형대수학이 중요한 이유
AI에서 선형대수가 중요한 이유
AI에서 코사인 유사도가 중요한 이유