Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get nth return value from function in Go

Tags:

go

I have started learning Go yesterday and so far I am fascinated. But I bumped to a problem.

Lets assume that function returns multiple vars (awesome feature). How should I use only nth value and not first n-1 values? In example I just want to check whether key exists in hash map but do nothing with value.

var value, hasElement = myMap[key]

The error I get is

main.go:15: value declared and not used

If I just print value it will all be fine but that is not good.

like image 665
Rouz Avatar asked Sep 04 '16 14:09

Rouz


1 Answers

In Go, the character _ is a placeholder indicating that you don't care about the value. Therefore, you can do

var _, hasElement = myMap[key]

which will ignore the first return value.

This extends to functions with any number of return values:

var a, _, _, d, e, _ = bigFunction()
like image 187
fmt Avatar answered Oct 06 '22 00:10

fmt