蹒跚学Go第二天

栏目: Go · 发布时间: 6年前

内容简介:函数就是将一堆代码进行重用的一种机制。函数就是一段代码,一个函数就像一个专门做这件事的人,我们调用它来做一些事情,它可能需要我们提供一些数据给它,它执行完成后可能会有一些执行结果给我们。要求的数据就叫参数,返回的执行结果就是返回值。在定义函数的时候根据需求指定参数的个数和类型,但是有时候如果无法确定参数的个数呢?

函数

函数就是将一堆代码进行重用的一种机制。函数就是一段代码,一个函数就像一个专门做这件事的人,我们调用它来做一些事情,它可能需要我们提供一些数据给它,它执行完成后可能会有一些执行结果给我们。要求的数据就叫参数,返回的执行结果就是返回值。

基本语法

func 函数名(){
  函数体
}
  • 例子
func main()  {
    var num,num1 int
    for i := 0; i < 2 ; i++ {
        fmt.Printf("输入第%d数字:\n",i)
        fmt.Scanf("%d",#)
        if i == 1{
            num1=num
        }
    }
    add(num,num1)
}

不定参数列表

在定义函数的时候根据需求指定参数的个数和类型,但是有时候如果无法确定参数的个数呢?

  • args后面跟了三个点,就是表示该参数可以接收0或多个整数值
  • args这个参数可以想象成是一个集合(类似数学中集合),可以存放多个值。

  • args有下角标如果用 Python 可以使用list来理解

例子一:

func add(args ...int)  {
    for i := 0; i <= len(args); i++ {
        fmt.Printf("当前多少次:%d\n",i)
    }
}

func main()  {
    add(1,2,3)
    add(1,2,34,4,5,12,12,123,3,4532,234,234,234,234234,234,234,234)

例子二:

  • range值管饱管够,args结束整个add函数结束
  • range会从集合中返回两个数,第一个是对应的坐标,赋值给了变量i,第二个就是对应的值,赋值了变量data

func add(args ...int)  {
    for i , data := range args {
        fmt.Println("编号:",i)
        fmt.Println("值:",data)
    }
}

func main()  {
    add(1,2,3)
}

注意项

  • 一定(只能)放在形参中的最后一个参数
  • 在对函数进行调用时,固定参数必须传值,不定参数可以根据需要来决定是否要传值

蹒跚学Go第二天

实例二

  • ( _ ),该下划线表示匿名变量,丢弃数据不进行处理,也就是任何赋予它的值都会被丢弃

蹒跚学Go第二天

函数嵌套调用


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Essential C++中文版

Essential C++中文版

[美] Stanley B. Lippman / 侯捷 / 华中科技大学出版社 / 2001-8 / 39.80元

书中以4个面向来表现C++的本质:procedural(程序性的)、generic(泛型的)、object-based(个别对象的)、object-oriented(面向对象的),全书围绕着一系列逐渐繁复的程序问题,以及用以解决这些问题的语言特性。循此方式,读者不只学到C++的函数和结构,也会学习到它们的设计目的和基本原理。一起来看看 《Essential C++中文版》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具