方法

作者: 江河弦音 | 来源:发表于2016-08-25 11:39 被阅读0次
方法

方法可以有零个以上参数。
在下面的例子里, add 方法有两个 int型参数。
但是请注意,类型在参数名的后面。
(关于为什么类型在参数的后面的更多信息, 请看 这篇文章 Go's declaration syntax.) (国内应该打不开,后面可能翻译过来)

#function.go

package main

import "fmt"

func add(x int, y int) int {
  return x + y
}

func main() {
  fmt.Println(add(42, 13))
}
方法继续

如果一个方法有两个或者以上的参数都是同一个类型,可以把参数类型写在最后一个的后面。
在下面的例子里,就是简写的。

x int, y int ```
写成

x, y int

#function-continued.go

package main

import "fmt"

func add(x, y int) int {
  return x + y
}

func main() {
  fmt.Println(add(42, 13))
}
多返回值

一个方法可以有任意个返回值。
这个swap 方法就返回了两个string类型的值

#multiple-results.go

package main

import "fmt"

func swap(x, y string) (string, string) {
  return y, x
}

func main() {
  a, b := swap("hello", "world")
  fmt.Println(a, b)
}
命名返回值

Go的返回值可以被命名。如果命名返回值,这些名称会被当做在这个方法内声明的变量。
这些名称应该在方法里被使用,并且记录返回的值。
一个return语句并没有 返回的参数,则被叫做裸return。
裸return语句,最好用在短方法里面,比如下面的例子。如果用在很长的方法里,代码的阅读性会变差。

#named-results.go

package main

import "fmt"

func split(sum int) (x, y int) {
  x = sum * 4 / 9
  y = sum - x
  return
}

func main() {
  fmt.Println(split(17))
}

相关文章

网友评论

      本文标题:方法

      本文链接:https://www.haomeiwen.com/subject/pioosttx.html