变量

变量是编程语言中一种基本的组成单位

变量对应的是内存中连续存储的一种地址,利用变量可以便捷的表示和使用

变量相当于内存中一个数据存储空间的表示


变量定义的规则

变量名有字母丶数字丶下划线组成,但不能以数字开头,

Golang中保留字和关键字都不能做变量名(if break defer ....)

Golang中变量名必须先申明才可以使用,且在同一作用域不可重复声明,声明后必须使用


方式1:未初始化

var 变量名 变量类型


方式2:初始化

var 变量名 变量类型 = 变量值


方式3:类型推导

变量名 := 变量值


Golang变量申明方式【案例】:


package main

import "fmt"

func main()  {
    // 变量定义方式1:
    var value = 10
    fmt.Println(value)

    // 变量定义方式2:
    var value_1 int
    value_1 = 100
    fmt.Println(value_1)

    // 多个变量定义
    var value1,value2 int = 200,300    
    /* 不推荐上面这种写法,既然直接初始化赋值了,
    可以直接通过类型推导获取变量类型 */
    // var value1,value2 = 200,300  //等价于上面定义的方式
    fmt.Println("value1=",value1,"value_2=",value2)
    
    var (
            name string
            age     int
            salary  float64
        )
            name = "石世林"
            age = 28
            salary = 6666.66

            fmt.Println("name=",name,"age=",age,"salay=",salary)

    // 变量定时方式3:类型推导
    value3 := 1000
    fmt.Println(value3)
    fmt.Printf("value3=%T value3=%v",value3,value3)
}

 

Golang变量定义作用域:


全局变量:

错误写法1:
names := "石世林"

错误写法2:
var names string
names = "大大林"


局部变量:

package main 


import (

       "fmt"

)


func main(){

       names := "石世林" // 局部变量作用域为当前函数中

       fmt.Println("名字:",names)

}