golang-3- 函数

函数是一等公民,无论什么语言函数都是重中之重。

1、函数可以没有参数或接受多个参数,下面这个例子中,`add` 接受两个 int 类型的参数。

注意:类型在变量名之后(x int, y int) 返回结果在最后 int ,这点和大部分语言相反。

package mainimport "fmt"func add(x int, y int) int {return x + y}func main() {fmt.Println(add(2, 3))}//以上是打印 2+3的结果

2、函数的入参类型的省略,当两个或多个连续的函数命名参数是同一类型,则除了最后一个类型之外,其他都可以省略,如下图add函数

package mainimport "fmt"func add(x , y ,z int) int {  //x,y,z都是一个类型int  前面两个可以省略return x + y+z}func main() {fmt.Println(add(2, 3,4))}

3、函数可以任意数量的返回值,swap 函数返回了两个字符串

package mainimport "fmt"//第一个返回值y ,第二个返回值x  返回类型要用括号包起来,里面是返回类型func swap(x, y string) (string, string) {  return y, x}func main() {a, b := swap("hello", "world")fmt.Println(a, b)}

4、Go 的返回值可以被命名,并且像变量那样使用,返回值的名称应当具有一定的意义,可以作为文档使用。没有参数的 return 语句返回结果的当前值。也就是`直接`返回。直接返回语句仅应当用在像下面这样的短函数中。在长的函数中它们会影响代码的可读性。

package mainimport "fmt"func addStr(x, y string) (m,n string) {  //可以指定返回顺序结构m=y+"is ok"n = x + "is ok"return}func main() {a, b := addStr("hello", "world")fmt.Println(a, b)}


golang-3- 函数


函数的基本使用就这些,以后的章节会介绍,怎么结合结构体去使用。


分享到:


相關文章: