首页 > 编程语言 > 详细

第十课 go语言函数

时间:2018-06-17 14:49:29      阅读:205      评论:0      收藏:0      [点我收藏+]

1 内置函数

  len() 函数可以接受不同类型参数并返回该类型的长度

  如果我们传入的是字符串则返回字符串的长度

  如果传入的是数组,则返回数组中包含的元素个数

2  自定义函数

// 函数返回单个值
func Max(a, b int) int {
    if a > b {
        return a
    } else {
        return b
    }
}

// 函数返回多个值
func Swap(a, b int) (int, int) {
    return b, a
}

 3  值传递 和 引用传递

var aa, bb int = 1, 10
    Swap2(&aa, &bb)

    fmt.Println(aa)
    fmt.Println(bb)

func Swap2(a *int, b *int) () {
    var temp int
    temp = *a
    *a = *b
    *b = temp
}

4 函数方法

  方法就是一个包含了接受者的函数,接受者可以是命名类型或者结构体类型的一个值或者是一个指针。所有给定类型的方法属于该类型的方法集

 

package main

import "fmt"

type Circle struct { //定义结构体
radius float64
}

func main() {
var c Circle
c.radius = 10.00
fmt.Println("Area of c is ", c.getArea()) // 可以直接调用结构体的方法

}

func (c Circle) getArea() float64 { // 这个方法是结构体的方法
return 3.14*c.radius*c.radius
}

5 函数闭包 

第十课 go语言函数

原文:https://www.cnblogs.com/liufei1983/p/9192762.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!