1、定义变量

1.定义变量的格式:var 变量名 类型 = 值,没有给变量赋值,则为数据类型的默认值

var name string = “张三”

var age int = 18

2.简化定义变量

name := “张三” 相当于 var name string = “张三”

如果给变量赋值了,会自动推导该变量的数据类型

2.可以同时定义多个变量

(1)var(

addr string

phone string

  1. sex string = "男"

)

addr = “北京”

phone=”137**

(2)var a,b,c int =1,2,3

var a,b,c string =”a”,”b”,”c”

(3) a,b,c := “a”,”b”,”c”

a,b,c := 1,2,3

3.简化变量的交换

a:=100

b:=200

b,a=a,b

fmt.Println(“交换后 a=”, a, “,b=”, b) //a=200,b=100

4.匿名变量

func test(int int){

return 100,200

}

func main(){

a, _ :=test() //只想要test中的第一个变量,可以使用匿名变量

_, b := test()//只想要test中的第二个变量,可以使用匿名变量

}

5.变量的作用域

1.全局变量:在当前go文件中生效

2.局部变量:只在一定范围内生效

3.全局变量与局部变量可同名,优先级为就近原则

var c int //定义全局变量 必须使用var, 使用 := 定义无效

func main(){

var a := 1

var b := 2

c=a+b //全局变量接收

fmt.Printlf(“c:%d”,c) //3

c :=5 //

fmt.Printlf(“c:%d”,c) //5

fmt.Printlf(“c内存地址:%p”,&c)

}

二、常量

常量的概念

在程序执行过程中,不可改变的量叫作常量。已经知道是一个值,并且在程序运行过程中这个值不会发生改变,就可以设为常量。比如圆周率、自然数等。

常量的命名

常量必须使用关键字const修饰,表示在整个程序中只能被赋值一次。常量的声明与变量相似,只需使用关键字const修饰、变量名字母大写和加上下划线即可。不使用下划线和小写也没错,但不利于可读性。

const 变量名 数据类型 = 变量值

常量的声明

与变量不同的是,常量在声明的同时必须完成初始化,即给变量值赋值。初始化赋值完成后,程序中不能再对它赋值,否则程序无法运行

  1. const PHONE_NUMBER int=11 ;//大陆电话号码固定是11位。

    const PI float64=3.14156; //圆周率

  2. const URL,URL2 string =”www.taobao.com”, “www.baidu.com”

  3. URL=”www.com.cn” //报错,常量无法直接修改
  4. 实际改变常量值需要找到常量的内存地址,跳过常量名,可通过常量的内存地址修改