Dalam bahasa Golang , anda dibenarkan untuk mengembalikan berbilang nilai daripada fungsi, menggunakan pernyataan pulangan. Dalam erti kata lain, dalam fungsi, pernyataan pulangan boleh mengembalikan berbilang nilai. Jenis nilai pulangan adalah sama dengan jenis parameter yang dinyatakan dalam senarai parameter.

Sintaks:
func function_name(parameter_list)(return_type_list){
// code...
}
Di sana:
- function_name : Ini adalah nama fungsi.
- senarai parameter : Mengandungi nama dan jenis parameter fungsi.
- return_type_list : Pilihan dan mengandungi jenis nilai yang dipulangkan oleh fungsi. Jika anda menggunakan return_type dalam fungsi anda, maka anda perlu menggunakan pernyataan return dalam fungsi anda.
Contohnya:
// Chương trình Go minh họa
// cách hàm trả về nhiều giá trị
package main
import "fmt"
// myfunc trả về 3 giá trị của kiểu int
func myfunc(p, q int)(int, int, int ){
return p - q, p * q, p + q
}
// Phương thức chính
func main() {
// Giá trị trả về được gắn vào
// 3 biến khác nhau
var myvar1, myvar2, myvar3 = myfunc(4, 2)
// Hiện giá trị
fmt.Printf("Result is: %d", myvar1 )
fmt.Printf("\nResult is: %d", myvar2)
fmt.Printf("\nResult is: %d", myvar3)
}
Keputusan:
Result is: 2
Result is: 8
Result is: 6
Namakan nilai pulangan
Dalam bahasa Go, anda dibenarkan memberikan nama untuk nilai pulangan. Dan anda boleh menggunakan nama pembolehubah tersebut dalam kod anda juga. Tidak perlu menulis nama ini dengan pernyataan pulangan kerana pengkompil Go secara automatik akan memahami bahawa pembolehubah ini harus dikekalkan. Dan jenis pulangan dipanggil pulangan minimum. Mengembalikan minimum mengurangkan pertindihan dalam program anda.
Sintaks:
func function_name(para1, para2 int)(name1 int, name2 int){
// code...
}
hoặc
func function_name(para1, para2 int)(name1, name2 int){
// code...
}
Di sini, name1 dan name2 ialah nama nilai pulangan dan para1 dan para2 ialah parameter fungsi.
Contohnya:
// Minh họa chương trình Go
// cách đặt tên cho giá trị trả về
package main
import "fmt"
// myfunc trả về 2 giá trị của kiểu int
// đây là tên giá trị trả về:
// rectangle và square
func myfunc(p, q int)( rectangle int, square int ){
rectangle = p*q
square = p*p
return
}
func main() {
// Giá trị trả về được gán cho
// hai biến khác nhau
var area1, area2 = myfunc(2, 4)
// Hiện giá trị
fmt.Printf("Area of the rectangle is: %d", area1 )
fmt.Printf("\nArea of the square is: %d", area2)
}
Keputusan:
Area of the rectangle is: 8
Area of the square is: 4