1.4. 自动推导类型-就是不用通过var 声明变量,不用指定类型,直接在变量名后面跟”:”号,同时完成赋值

未匹配的标注
本文档最新版为 2023,旧版本可能放弃维护,推荐阅读最新版!

自动推导类型

在给变量赋值时,我们感觉非常麻烦,
需要var + 数据类型 + 值、或者 先声明数据类型后面再赋值。

那么有没有更简单的给变量赋值的方式?
我们可以使用 自动推导类型 ,具体示例如下:

num := 22
fmt.Println(num)

运行:go run .\test.go
输出结果:22

所谓自动推导类型,就是不用通过var 声明变量,不用指定类型,直接在变量名后面跟”:”号,同时完成赋值。那么GO会根据所赋的值自动推导出变量的类型。如果给num变量赋值为小数,那么该变量的类型为小数类型(浮点)。

通过比较,我们发现这种方式比前面的赋值方式要简单方便。这种方式,也是我们以后开发过程中最常用的方式。

1. 用自动推导类型去定义 整型,浮点型,字符串类型数据

func main() {
    //var a int = 10
    //var b int = 20
    //不同的数据类型在内存中开辟的空间不同
    //自动推导类型
    a := 10      //int     整型
    b := 123.456 //float64 浮点型
    c := "learnku社区"  //string 字符串类型

    fmt.Println(a + 10)
    fmt.Println(b + 3.14)
    fmt.Println(c)
    //不同的数据类型不能计算
    //fmt.Println(a + b)//err
}

2. 交换两个变量的值

2.1 使用第三变量进行交换

func main() {

    a := 10

    b := 20

    //使用第三变量进行交换

    //先定义后使用

       var c int
        c = a

        c := a
        a = b
        b = c
    fmt.Println(a)

    fmt.Println(b)

}

2.2 通过运算进行交换


func main() {

    a := 10

    b := 20

    //通过运算进行交换

    a = a + b

    b = a - b

    a = a - b

    fmt.Println(a)

    fmt.Println(b)

}

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~