Go の関数
Go の関数、複数の戻り値、可変長引数
関数
関数の定義には func、戻り値の指定には return を使用する。
package main
import "fmt"
func add(x int, y int) int {
return x + y
}
func main() {
fmt.Println(add(5, 3)) // => 8
}
実行結果:
8
複数の戻り値
関数は複数の値を返せる。戻り値の型は括弧でまとめる。
func addMinus(x int, y int) (int, int) {
return x + y, x - y
}
func main() {
add, min := addMinus(8, 5)
fmt.Println(add, min)
}
実行結果:
13 3
不要な戻り値を無視するにはブランク識別子 _ を使用する。
_, y := funcA()
可変長引数
可変長引数を定義するには ... を使用する。
package main
import "fmt"
func funcA(a int, b ...int) {
fmt.Printf("a=%d\n", a)
for i, num := range b {
fmt.Printf("b[%d]=%d\n", i, num)
}
}
func main() {
funcA(1, 2, 3, 4, 5)
}
実行結果:
a=1
b[0]=2
b[1]=3
b[2]=4
b[3]=5