Function returning multiple values ​​in Golang

In Golang language , you are allowed to return multiple values ​​from a function, using the return statement. In other words, in a function, a return statement can return multiple values. The type of the returned values ​​is similar to the type of the parameter specified in the parameter list.

Function returning multiple values ​​in Golang

Syntax:

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

In there:

  • function_name : This is the name of the function.
  • parameter-list : Contains the names and types of the function parameters.
  • return_type_list : Optional and contains the types of values ​​that the function returns. If you are using return_type in your function, then you need to use the return statement in your function.

For example:

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

Result:

Result is: 2
Result is: 8
Result is: 6

Name the return value

In Go language, you are allowed to provide names for return values. And you can also use those variable names in your code. There is no need to write these names with return statement because Go compiler will automatically understand that these variables should be retained. And the return type is called minimal return. Minimal return reduces duplication in your program.

Syntax:

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

hoặc

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

Here, name1 and name2 are the names of the return value and para1 and para2 are the parameters of the function.

For example:

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

Result:

Area of the rectangle is: 8
Area of the square is: 4
Sign up and earn $1000 a day ⋙

Leave a Comment

Difference between regular TV and Smart TV

Difference between regular TV and Smart TV

Smart TVs have really taken the world by storm. With so many great features and the ability to connect to the Internet, technology has changed the way we watch TV.

Why doesnt the freezer have a light but the refrigerator does?

Why doesnt the freezer have a light but the refrigerator does?

Refrigerators are familiar appliances in families. Refrigerators usually have 2 compartments, the cool compartment is spacious and has a light that automatically turns on every time the user opens it, while the freezer compartment is narrow and has no light.

2 Ways to Fix Network Congestion That Slows Down Wi-Fi

2 Ways to Fix Network Congestion That Slows Down Wi-Fi

Wi-Fi networks are affected by many factors beyond routers, bandwidth, and interference, but there are some smart ways to boost your network.

How to Downgrade from iOS 17 to iOS 16 without Losing Data using Tenorshare Reiboot

How to Downgrade from iOS 17 to iOS 16 without Losing Data using Tenorshare Reiboot

If you want to go back to stable iOS 16 on your phone, here is the basic guide to uninstall iOS 17 and downgrade from iOS 17 to 16.

What happens to the body when you eat yogurt every day?

What happens to the body when you eat yogurt every day?

Yogurt is a great food. Is it good to eat yogurt every day? What will happen to your body when you eat yogurt every day? Let's find out together!

Which type of rice is best for health?

Which type of rice is best for health?

This article discusses the most nutritious types of rice and how to maximize the health benefits of whichever rice you choose.

How to wake up on time in the morning

How to wake up on time in the morning

Establishing a sleep schedule and bedtime routine, changing your alarm clock, and adjusting your diet are some of the measures that can help you sleep better and wake up on time in the morning.

Rent Please! Landlord Sim Tips for Beginners

Rent Please! Landlord Sim Tips for Beginners

Rent Please! Landlord Sim is a simulation mobile game on iOS and Android. You will play as a landlord of an apartment complex and start renting out an apartment with the goal of upgrading the interior of your apartments and getting them ready for rent.

Latest Bathroom Tower Defense Codes and How to Enter Codes

Latest Bathroom Tower Defense Codes and How to Enter Codes

Get Bathroom Tower Defense Roblox game codes and redeem them for exciting rewards. They will help you upgrade or unlock towers with higher damage.

Structure, symbols and operating principles of transformers

Structure, symbols and operating principles of transformers

Let's learn about the structure, symbols and operating principles of transformers in the most accurate way.

4 Ways AI Is Making Smart TVs Better

4 Ways AI Is Making Smart TVs Better

From better picture and sound quality to voice control and more, these AI-powered features are making smart TVs so much better!

Why ChatGPT is better than DeepSeek

Why ChatGPT is better than DeepSeek

DeepSeek initially had high hopes. As an AI chatbot marketed as a strong competitor to ChatGPT, it promised intelligent conversational capabilities and experiences.

Meet Fireflies.ai: The Free AI Secretary That Saves You Hours of Work

Meet Fireflies.ai: The Free AI Secretary That Saves You Hours of Work

It's easy to miss important details when you're jotting down other essentials, and trying to take notes while chatting can be distracting. Fireflies.ai is the solution.

How to raise Axolotl Minecraft, tame Minecraft Salamander

How to raise Axolotl Minecraft, tame Minecraft Salamander

Axolot Minecraft will be a great assistant for players when operating underwater if they know how to use them.

A Quiet Place: The Road Ahead PC Game Configuration

A Quiet Place: The Road Ahead PC Game Configuration

A Quiet Place: The Road Ahead's configuration is rated quite highly, so you will need to consider the configuration before deciding to download.