1、定义变量
1.定义变量的格式:var 变量名 类型 = 值,没有给变量赋值,则为数据类型的默认值
var name string = “张三”
var age int = 18
2.简化定义变量
name := “张三” 相当于 var name string = “张三”
如果给变量赋值了,会自动推导该变量的数据类型
2.可以同时定义多个变量
(1)var(
addr string
phone string
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 变量名 数据类型 = 变量值
常量的声明
与变量不同的是,常量在声明的同时必须完成初始化,即给变量值赋值。初始化赋值完成后,程序中不能再对它赋值,否则程序无法运行
const PHONE_NUMBER int=11 ;//大陆电话号码固定是11位。
const PI float64=3.14156; //圆周率
const URL,URL2 string =”www.taobao.com”, “www.baidu.com”
- URL=”www.com.cn” //报错,常量无法直接修改
- 实际改变常量值需要找到常量的内存地址,跳过常量名,可通过常量的内存地址修改