English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang 기본 튜토리얼

Golang 제어 문

Golang 함수 & 메서드

Golang 구조체

Golang 슬라이스 & 배열

Golang 문자열(String)

Golang 포인터

Golang 인터페이스

Golang 병행

Golang 예외(Error)

Golang 다른杂项

Go 언어 함수가 여러 값을 반환할 수 있습니다.

Go 언어에서는 return 문을 통해 하나의 값을 반환할 수 있습니다.함수여러 값을 반환합니다. 다시 말해, 함수에서는 단일 return 문이 여러 값을 반환할 수 있습니다. 반환 값을 타입은 매개변수 목록에서 정의된 매개변수 타입과 유사합니다.

문법:

func function_name(parameter_list)(return_type_list){
     // code...
}

여기서

  • function_name:이는함수의 이름을 포함합니다.

  • parameter-list:이는 함수 매개변수 이름과 타입을 포함합니다.

  • return_type_list:이는 선택 사항입니다. 이는 함수가 반환하는 값을 포함합니다. 함수에서 return_type를 사용하면 반드시 함수에서 return 문을 사용해야 합니다.

package main
import "fmt"
// myfunc가 반환합니다.3int 타입의 값
func myfunc(p, q int) (int, int, int) {
    return p - q, p * q, p + q
}
func main() {
    //을 반환 값을 할당합니다. 세 개의 다른 변수에
    var myvar1, myvar2, myvar3 = myfunc(4, 2)
    // 표시된 값
    fmt.Printf("결과는: %d", myvar1)
    fmt.Printf("\n결과는: %d", myvar2)
    fmt.Printf("\n결과는: %d", myvar3)
}

출력:

결과는: 2
결과는: 8
결과는: 6

반환 값을 이름을 지정하다

Go 언어에서는 반환 값을 이름을 제공할 수 있습니다. 이러한 변수 이름을 코드에서 사용할 수도 있습니다. 이러한 이름을 반환语句에 사용하지 않아도 됩니다. Go 컴파일러는 이러한 변수가 반드시 반환되어야 한다는 것을 자동으로 이해합니다. 이러한 종류의 반환은 브라운 리턴으로 불립니다. 간단한 반환은 프로그램의 중복을 줄입니다.

문법:

func function_name(para1, para2 int)(name1 int, name2 int){
    // code...
}
또는
func function_name(para1, para2 int)(name1, name2 int){
   // code...
}

여기서name1name2은 반환 값 이름이며, para1과 para2은 함수의 매개변수입니다.

package main
import "fmt"
// myfunc가 반환합니다.2int 타입의 값
//이는 반환 값 이름입니다.
//는 rectangle 과 square
func myfunc(p, q int) (rectangle int, square int) {
    rectangle = p * q
    square = p * p
    return
}
func main() {
    //을 반환 값을 할당합니다.
    //두 개의 다른 변수
    var area1, area2 = myfunc(2, 4)
    fmt.Printf("직사각형 면적: %d", area1)
    fmt.Printf("\n정사각형 면적: %d", area2)
}

출력:

矩形面积为: 8
矩形面积为: 4