golang语言学习第一课:如何定义变量,笔记及回顾

时间:2022-04-04 22:37:24

第一课主要讲go语言如何定义变量

需要注意的是:go语言定义了变量一定要使用,不使用会提示出错。这个机制比较好。

第一:完整变量定义法: var a int =3    注意:go语言跟其他语言定义变量不太一样,类型放后面,符合人们思维的习惯。

第二种:var省略类型法: var a =3

第三种:批量定义变量法:

var (

  a int =3

  b string="hello"

       c  bool = true

)

省略类型版:

var (

  a =3

  b ="hello"

  c = true

)

第四种:自动推导类型法:只能在函数体内用自动推导的方式,在函数体外不能使用。

function variableshorter int  ( ) {       

  /*此处有点郁闷,函数返回类型也放后面定义,因为是从C和C#转过来的,老是不习惯*/

  a:=3

  b, c, d := 5, true, "string hello"

  b=110   /* 自动推导定义变量用冒号等号,其中冒号是定义变量的意思,第二次用变量的时候不能再用:=,只能用=赋值。*/

  return 0  //记得返回整形,

}

 

最后把练习的源代码全部放上来:

package main

import "fmt"
var aa =5       //包内部变量,不是全局变量
var ss ="hello5"  //用var定义变量可以省略类型
var bb bool = true  //在函数体外不能用bb:=true
/*
批量定义变量,可以放进一个括号里
var (
    aa=3
    ss="hello"
    bb=true
)

 */

func variableZeroValue (){
    var a int
    var s string
    fmt.Println(a,s)
    fmt.Printf("%d %s\n", a,s)
    fmt.Printf("%d %q\n",a,s) //需要多练习,格式化输出格式用“”双引号,里面多参数不能带逗号而是用空格

}

func variableInitialValue (){
    var a,b int =3,4
    var s string ="abc"
    fmt.Println(a,b,s)
}

func variableTypeDeduction(){
    var a,b,c,s =3,4,true,"abc" //注意 true是小写, True是错误的

    fmt.Println(a,b,c,s)
}

func variableShort(){
    a,b,c,s:=3,4,true,"abc" //:=中的冒号是定义变量,后面要用改变变量不能再用冒号等于,只能用=赋值符
    b=5  //改变变量的值,不能再用:=
    fmt.Println(a,b,c,s)
}

func main() {
    variableShort()
    fmt.Println(aa,bb,ss)
}