版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tangyaya8/article/details/86760371
为什么需要变量
在此之前,我们来做一个小的例子:
从1加到100
如果不用变量:
package main
func main(){
fmt.Println(1+2+3+4+5+6+7+8+9+10+...+100)
}
用变量:
package main
func main(){
var sum int
for i := 0; i <= 100; i++ {
sum += i
}
fmt.Println(sum)
}
从上述连个例子来看,变量的优势很明显,如果再将数字往大加,那么变量的优势更为明显,你只需定义一个变量,让代码逻辑对变量的值进行改变,无须你手动操作,其实,变量的出现也是计算自动化的一个小铺垫,所以,在现代的编程语言中,都有变量。我们来学习下golang的变量的定义和使用
变量
在go语言中有两种申明定义的方式
-
使用
var
关键字来申明定义变量或申明变量//申明变量 var a int //初始化变量 a = 10 //使用变量 fmt.Println(“the value of a is”,a)
也可以申明和初始化一起
var a int = 10 //可以省略类型关键字,编译器可以根据后面的value推导出来 var b = 20
如果定义多个变量,可以用go预言中的块来定义:
var( a int b string c bool )
也可以用这种方式:
var a,b,c="hello",1,true
-
使用类型推导来申明定义变量
除了上面的还可以使用:=
推导出,这种方式将申明和初始化放在了一起,所以使用的时候要注意,并且推荐这种方式//申明并初始化变量 a := “happy new year” //注意,在一个函数中,同名变量只能有一个,所以不能再下文重新定义名字为a的变量,但是可以给a赋值 a="I want to change the value of a" fmt.Println("a value=",a)
上面两种定义和初始化变量的方式,可以根据自己的情况来使用
扫描二维码关注公众号,回复: 5631899 查看本文章
常量
常量是定义的时候必须初始化,也就是给常量一个值,在go语言中,常量的定义用const
关键字修饰
const a int = 20
//由于编译器可以根据后面的value推导出类型,所以可以省去类型
const b = 10
//如果定义多个常量,可以用块
const(
a string = "Hello World"
b int = 39
)
//也可以用这种方式
const a,b,c = 10,"hello",true
常量,也就是在代码中不能改变的量,代码中的一些魔数可以用此方式,比如你使用了圆周率
就可以定义常量,然后在下文中使用
总结
变量有两种定义方式,一种可以定义但不初始化,一种将定义和初始化放在一起。
常量的定义和变量的一种定义方式类似,都要有关键字修饰,可以使用块定义。