1.变量
变量是几乎所有编程语言中最基本的组成元素,变量是程序运行期间可以改变的量。
程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间。
1.1变量声明(var)
1.1.1基本语法:
//基本语法
var variable_name type = value
1.1.2 语法解析
var 声明
variable_name 变量名
tpye 类型
value 初始化值
1.1.3单变量声明示例
声明一个变量i,类型为int
var i int
1.1.4多变量声明示例
var i, j, k int
1.1.5单变量声明并初始化值
var i int = 100
1.1.6多变量声明并初始化值
var i, j, k int = 100, 200, 300
1.2简短声明(仅函数内部)
1.2.1基本语法
vname1, vname2, vname3 := value1, value2, value3
1.2.2语法解析
相较于var声明,简短声明语法相对简洁,用":="代替了var和type,隐去var比较好理解,隐去tpye,程序如何理解我们的变量类型呢?这一点,跟其他语言有相似之处。go语言也会根据给定的value去自动推导类型。
但是这种定义方法只能在函数内部使用,在外部使用时将无法编译成功。
1.3变量小结
由于变量声明的两种方式,我们习惯性的使用var去声明全局变量,用“简短声明”去声明局部变量。
2.常量
所谓常量,也就是在程序编译阶段固定不变的值
常量可以是数值,布尔值,字符串等类型。
2.1基本语法
const constant_name = value
2.2常量声明示例
const pi = 3.1415926
const i = 100
const str = "fghdws"
//如有必要,可以声明常量类型
const pi float32 = 3.1415926
3.注意点
3.1不同类型不允许互相赋值或操作
//以下为错误示范
package main
import "fmt"
func main(){
var i int16 = 100
var j int32 = 200
var k = i + j
fmt.Println(k)
}
报错显示i和j的类型不同,不能进行操作
3.2bool类型默认值为false
package main
import "fmt"
func main(){
var i bool
fmt.Println(i)
}
当然我们可以给变量指定bool值
package main
import "fmt"
func main(){
var i bool = true
fmt.Println(i)
}