现在的位置: 首页 > 综合 > 正文

5、函数 Functions

2013年02月07日 ⁄ 综合 ⁄ 共 756字 ⁄ 字号 评论关闭

一个函数可以有零或几个参数。

下面这个例子,就是添加了两个int类型的参数。

注意这个类型是在变量名的后面。

(想知道更多关于类型的文章,可以看这篇 article on Go's declaration syntax.)

 1 package main
2
3 import "fmt"
4
5 func add(x int, y int) int {
6 return x + y
7 }
8
9 func main() {
10 fmt.Println(add(42, 13))
11 }
55

当两个或几个相同类型的参数时,我们可以忽略前面几个类型定义,留下最后一个就可以了。

在下面这个理中,我们可以缩略写成这样:

x int, y int

改成

x, y int
 1 package main
2
3 import "fmt"
4
5 func add(x, y int) int {
6 return x + y
7 }
8
9 func main() {
10 fmt.Println(add(42, 13))
11 }
55

  一个函数可以返回任意多的值的。

下面这个方法就返回两个。

 1 package main
2
3 import "fmt"
4
5 func swap(x, y string) (string, string) {
6 return y, x
7 }
8
9 func main() {
10 a, b := swap("hello", "world")
11 fmt.Println(a, b)
12 }
world hello

在GO 语言中,不仅可以返回单个值,还可以返回多个值。

如果返回的值名称,已经在函数体内声明了变量,则在return 后面,就不需要任何内容了。

 1 package main
2
3 import "fmt"
4
5 func split(sum int) (x, y int) {
6 x = sum * 4/9
7 y = sum - x
8 return
9 }
10
11 func main() {
12 fmt.Println(split(17))
13 }
7 10

 

抱歉!评论已关闭.